让建站和SEO变得简单

让不懂建站的用户快速建站,让会建站的提高建站效率!

你的位置:资讯汇 > 健康生活 >

一套基本的具身智能手艺经由是如何杀青的

Embodied Intelligence当作一种将感知、决策与践诺相勾通的前沿手艺,正在引颈机器东说念主手艺迈向新的高度。具身智能不仅要求机器东说念主具备和会和处理复杂环境的智商,还需赋予其自主决策和践诺任务的智商。本文将深远探讨如何将LLM和多模态大模子与机器东说念主手艺相勾通,构建一套完竣的具身智能手艺经由。本文参考了同济子豪兄的部单干作,TsingtaoAI团队对全体构建作念了一部分拓展和蔓延。文中关系经由和代码仅作示例,用于读者和会关系的里面杀青逻辑,不具备工程复现酷爱。

本文目次

1.一套最小的具身智能应用杀青经由

2.系统架构瞎想

3.LLM与机器东说念主集成

4.多模态大模子的应用

5.自主决策与践诺模块

6.传感器与践诺器接口

7.通讯与数据处理

8.系统部署与优化

9.案例分析与代码示例

10.未来瞻望

1.一套最小的具身智能应用杀青经由

具身智能强调机器东说念主不仅具备感知和领路智商,还或者通过与环境的交互杀青自主活动。与传统的机器东说念主比较,具身智能机器东说念主更具恰当性和纯真性,或者在复杂、多变的环境中践诺任务。这一成见的中枢在于将感知、领路和动作扬弃有机勾通,使机器东说念主具备类似东说念主类的智能活动。

1.1 具身智能的要津成分

l感知智商:通过多种传感器获得环境信息,包括视觉、听觉、触觉等。

l领路智商:摆布AI模子进行信息处理和和会,杀青环境建模和任务蓄意。

l动作扬弃:通过践诺器杀青对环境的物理操作,完成特定任务。

l自主决策:基于感知和领路完毕,自主制定活动政策。

2. 系统架构瞎想

构建具身智能系统需要一个高度集成的架构,涵盖感知、领路、决策与践诺等多个模块。以下是一个典型的具身智能系统架构图:

diff

+-----------------------+

| 感知模块 |

| - 录像头 |

| - 麦克风 |

| - 触觉传感器 |

+----------+------------+

|

v

+----------+------------+

| 数据处理 |

| - 数据预处理 |

| - 特征索取 |

+----------+------------+

|

v

+----------+------------+

| 领路模块 |

| - 大型谈话模子(LLM) |

| - 多模态大模子 |

+----------+------------+

|

v

+----------+------------+

| 决策与蓄意模块 |

| - 活动蓄意 |

| - 决策树 |

+----------+------------+

|

v

+----------+------------+

| 践诺模块 |

| - 机械臂扬弃 |

| - 动作践诺 |

+-----------------------+

2.1 模块详备讲明

l感知模块:谨慎蚁集环境数据,包括视觉、听觉和触觉等多种传感器信息。

l数据处理:对蚁集到的数据进行预处理和特征索取,为领路模块提供高质料的输入。

l领路模块:摆布LLM和多模态大模子对数据进行和会和分析,生成高下文关系的信息。

l决策与蓄意模块:基于领路完毕,制定具体的活动操办和政策。

l践诺模块:将决策滚动为具体的物理动作,通过机械臂等践诺器完成任务。

3. LLM与机器东说念主集成

大型谈话模子,如OpenAI的GPT-4o,具备强盛的当然谈话和会和生成智商。将LLM集成到机器东说念主系统中,不错权贵擢升机器东说念主的交互智商和决策水平。

3.1 LLM的采取与部署

在采取LLM时,需要洽商模子的性能、反映速率和资源铺张。面前,主流的LLM包括:

lYi-Large:具有强盛的中语和会和生成智商,得当中语环境下的应用。

lClaude 3:以其稳健性和高效性著称,适用于多种任务场景。

lERNIE 4.0:百度推出的多任务学习模子,在中语NLP任务中推崇优异。

3.1.1 部署环境

为了杀青高效的模子运行,提议使用亚马逊云科技的生成式AI平台Amazon Bedrock。Bedrock提供了高性能的狡计资源和方便的模子照管接口,得当大限制部署LLM。

python

import boto3

# 运滚动Bedrock客户端

bedrock_client = boto3.client('bedrock', region_name='us-west-2')

# 调用LLM进行文本生成

response = bedrock_client.invoke_model(

ModelId='ernie-4.0',

Prompt='你好,机器东说念主!今天的任务是什么?',

MaxTokens=150

)

print(response['GeneratedText'])

3.2 LLM与感知模块的交融

LLM不仅不错处理文本教唆,还能勾通视觉和听觉信息,杀青更复杂的交互。通过多模态输入,机器东说念主不错更准确地和会用户意图。

python

from transformers import CLIPProcessor, CLIPModel

import torch

# 运滚动多模态模子

clip_model = CLIPModel.from_pretrained("openai/clip-vit-base-patch32")

clip_processor = CLIPProcessor.from_pretrained("openai/clip-vit-base-patch32")

def process_multimodal(image, text):

inputs = clip_processor(text=[text], images=image, return_tensors="pt", padding=True)

outputs = clip_model(**inputs)

logits_per_image = outputs.logits_per_image

probs = logits_per_image.softmax(dim=1)

return probs

# 示例调用

image = Image.open("example.jpg")

text = "这是一个红色的苹果。"

prob = process_multimodal(image, text)

print(prob)

3.3 当然谈话教唆明白与践诺

通过LLM,机器东说念主不错明白当然谈话教唆,并将其滚动为具体的动作教唆。举例,用户不错通过语音教唆“请将红色的物体提起来”,机器东说念主通过LLM明白后,勾通视觉信息,践诺相应的动作。

python

def parse_instruction(instruction):

# 使用LLM明白教唆

response = bedrock_client.invoke_model(

ModelId='yi-large',

Prompt=instruction,

MaxTokens=100

)

action_plan = response['GeneratedText']

return action_plan

instruction = "请将红色的物体提起来。"

action = parse_instruction(instruction)

print(action)

4. 多模态大模子的应用

多模态大模子勾通了文本、图像、音频等多种数据类型的处明智商,赋予机器东说念主更全面的感知和和会智商。面前,主流的多模态大模子包括GPT-4o、Yi-Vision、Claude 3 Opus等。

4.1 多模态模子的采取与集成

采取合适的多模态模子是杀青具身智能的要津。以下是几种常用的多模态模子偏激特色:

lGPT-4o:在多模态和会和生成方面推崇优异,得当复杂场景下的应用。

lYi-Vision:专注于中语图像和会,得当中语环境下的视觉任务。

lClaude 3 Opus:勾通了音频和视觉信息,适用于需要听觉与视觉勾通的任务。

4.1.1 集成示例

以GPT-4o为例,展示如何将图像和文本输入勾通,进行空洞和会。

python

from transformers import GPT4oProcessor, GPT4oModel

from PIL import Image

# 运滚动多模态处理器和模子

processor = GPT4oProcessor.from_pretrained("openai/gpt4o")

model = GPT4oModel.from_pretrained("openai/gpt4o")

def multimodal_inference(image_path, text):

image = Image.open(image_path)

inputs = processor(text=text, images=image, return_tensors="pt")

outputs = model(**inputs)

return outputs

# 示例调用

image_path = "scene.jpg"

text = "神态这张图片中的主要物体和动作。"

outputs = multimodal_inference(image_path, text)

print(outputs)

4.2 多模态信息交融

在具身智能中,交融多模态信息是擢升机器东说念主和会智商的错误妙技。通过勾通视觉、听觉和文本信息,机器东说念主或者更准确地感知环境和用户意图。

python

def fuse_multimodal_data(image, audio, text):

# 处理视觉信息

visual_features = clip_model.get_image_features(clip_processor(images=image, return_tensors="pt")["pixel_values"])

# 处理音频信息

audio_features = audio_model.extract_features(audio)

# 处理文本信息

text_features = llm_model.encode(text)

# 交融特征

fused_features = torch.cat((visual_features, audio_features, text_features), dim=1)

return fused_features

# 示例调用

image = Image.open("object.jpg")

audio = load_audio("command.wav")

text = "请识别并握取桌上的苹果。"

features = fuse_multimodal_data(image, audio, text)

print(features)

5. 自主决策与践诺模块

自主决策是具身智能机器东说念主的中枢,通过勾通领路模块的输出,制定具体的活动操办。决策模块需要具备纯真性和恰当性,或者大意动态变化的环境。

5.1 决策树与活动蓄意

决策树是一种常用的决策模子,通过分档次的条款判断,细则下一步的活动。勾通活动蓄意,机器东说念主不错凭据面前现象和办法,制定详备的活动要领。

python

class DecisionNode:

def __init__(self, condition, true_branch, false_branch):

self.condition = condition

self.true_branch = true_branch

self.false_branch = false_branch

def evaluate_decision(node, context):

if node.condition(context):

if isinstance(node.true_branch, DecisionNode):

return evaluate_decision(node.true_branch, context)

else:

return node.true_branch

else:

if isinstance(node.false_branch, DecisionNode):

return evaluate_decision(node.false_branch, context)

else:

return node.false_branch

# 示例决策树

def condition_pick_up(context):

return context['object_detected'] and context['object_color'] == 'red'

action_pick = "握取红色物体"

action_search = "搜索红色物体"

root = DecisionNode(condition_pick_up, action_pick, action_search)

# 示例调用

context = {'object_detected': True, 'object_color': 'red'}

action = evaluate_decision(root, context)

print(action) # 输出: 握取红色物体

5.2 强化学习在决策中的应用

强化学习(Reinforcement Learning, RL)通过与环境的交互,抑止优化政策,杀青复杂任务的自主决策。摆布RL,机器东说念主或者在动态环境中学习并恰当变化。

python

import gym

import numpy as np

import torch

import torch.nn as nn

import torch.optim as optim

# 界说通俗的政策收集

class PolicyNetwork(nn.Module):

def __init__(self, state_size, action_size):

super(PolicyNetwork, self).__init__()

self.fc = nn.Linear(state_size, 128)

self.action_head = nn.Linear(128, action_size)

def forward(self, x):

x = torch.relu(self.fc(x))

action_probs = torch.softmax(self.action_head(x), dim=-1)

return action_probs

# 运滚动环境和收集

env = gym.make('CartPole-v1')

state_size = env.observation_space.shape[0]

action_size = env.action_space.n

policy_net = PolicyNetwork(state_size, action_size)

optimizer = optim.Adam(policy_net.parameters(), lr=1e-2)

eps = np.finfo(np.float32).eps.item()

# 检会过程

for episode in range(1000):

state = env.reset()

rewards = []

log_probs = []

done = False

while not done:

state = torch.from_numpy(state).float()

action_probs = policy_net(state)

m = torch.distributions.Categorical(action_probs)

action = m.sample()

log_prob = m.log_prob(action)

state, reward, done, _ = env.step(action.item())

log_probs.append(log_prob)

rewards.append(reward)

if done:

break

# 狡计累计奖励

cumulative_reward = 0

policy_loss = []

for log_prob, reward in zip(log_probs, rewards):

cumulative_reward += reward

policy_loss.append(-log_prob * cumulative_reward)

optimizer.zero_grad()

policy_loss = torch.cat(policy_loss).sum()

policy_loss.backward()

optimizer.step()

if episode % 100 == 0:

print(f"Episode {episode}, Reward: {cumulative_reward}")

5.3 活动蓄意的杀青

活动蓄意需要勾通具体任务,制定详备的活动要领。举例,在握取物体任务中,蓄意旅途、避障政策等。

python

import numpy as np

class BehaviorPlanner:

def __init__(self, robot, environment):

self.robot = robot

self.environment = environment

def plan_path(self, start, goal):

# 使用A*算法进行旅途蓄意

open_set = set()

open_set.add(start)

came_from = {}

g_score = {start: 0}

f_score = {start: self.heuristic(start, goal)}

while open_set:

current = min(open_set, key=lambda x: f_score.get(x, np.inf))

if current == goal:

return self.reconstruct_path(came_from, current)

open_set.remove(current)

for neighbor in self.environment.get_neighbors(current):

tentative_g = g_score[current] + self.distance(current, neighbor)

if tentative_g < g_score.get(neighbor, np.inf):

came_from[neighbor] = current

g_score[neighbor] = tentative_g

f_score[neighbor] = tentative_g + self.heuristic(neighbor, goal)

open_set.add(neighbor)

return []

def heuristic(self, a, b):

return np.linalg.norm(np.array(a) - np.array(b))

def distance(self, a, b):

return self.heuristic(a, b)

def reconstruct_path(self, came_from, current):

path = [current]

while current in came_from:

current = came_from[current]

path.append(current)

path.reverse()

return path

# 示例调用

robot = MyRobot()

environment = EnvironmentGrid()

planner = BehaviorPlanner(robot, environment)

start = (0, 0)

goal = (5, 5)

path = planner.plan_path(start, goal)

print(f"蓄意旅途: {path}")

6. 传感器与践诺器接口

传感器和践诺器是机器东说念主与外界交互的桥梁,确保感知信息的准确蚁集和动作教唆的有用践诺。以下将详备先容如何集成和照管各式传感器与践诺器。

6.1 视觉传感器接口

录像头是主要的视觉传感器,通过图像处理手艺,获得环境的视觉信息。

python

import cv2

class CameraInterface:

def __init__(self, camera_id=0):

self.cap = cv2.VideoCapture(camera_id)

def get_frame(self):

ret, frame = self.cap.read()

if ret:

return frame

else:

return None

def release(self):

self.cap.release()

# 示例调用

camera = CameraInterface()

frame = camera.get_frame()

if frame is not None:

cv2.imshow('Camera Frame', frame)

cv2.waitKey(0)

camera.release()

cv2.destroyAllWindows()

6.2 语音识别与合成

语音识别和合成是杀青当然东说念主机交互的错误妙技。本文给与PaddleSpeech进行随笔本在线合成和AppBuilder-SDK进行语音识别。

python

import paddlespeech as ps

# 语音识别

def recognize_speech(audio_file):

recognizer = ps.AsrModel.from_pretrained("appbuilder-sdk-short")

result = recognizer.recognize(audio_file)

return result

# 语音合成

def synthesize_speech(text, output_file):

tts = ps.TtsModel.from_pretrained("appbuilder-sdk-tts")

tts.synthesize(text, output_file)

# 示例调用

audio_input = "command.wav"

recognized_text = recognize_speech(audio_input)

print(f"识别完毕: {recognized_text}")

text_output = "任务已完成。"

synthesize_speech(text_output, "output.wav")

6.3 机械臂扬弃接口

机械臂是机器东说念主的践诺器,通过编程接口,杀青精确的动作扬弃。本文以Mycobot 280 Pi机械臂为例,展示如何进行扬弃。

python

from pymycobot import Mycobot

# 运滚动机械臂

mc = Mycobot("/dev/ttyUSB0", 115200)

# 迁徙到指定坐标

def move_to(x, y, z, r=0):

mc.send_coords([x, y, z, r], 50)

# 握取动作示例

move_to(200, 0, 100) # 位置1

mc.set_gripper_state(True) # 开启夹爪

move_to(200, 0, 200) # 位置2

mc.set_gripper_state(False) # 关闭夹爪

# 示例调用

move_to(150, 50, 100)

mc.set_gripper_state(True)

move_to(150, 50, 200)

mc.set_gripper_state(False)

6.4 传感器数据同步与照管

确保传感器数据的同步与高效照管,是杀青准确扬弃的基础。不错通过多线程或异步编程,杀青多传感器数据的并行处理。

python

import threading

class SensorManager:

def __init__(self):

self.camera = CameraInterface()

self.audio = AudioInterface()

self.lock = threading.Lock()

self.latest_frame = None

self.latest_audio = None

def start_camera(self):

def camera_thread():

while True:

frame = self.camera.get_frame()

with self.lock:

self.latest_frame = frame

threading.Thread(target=camera_thread, daemon=True).start()

def start_audio(self):

def audio_thread():

while True:

audio = self.audio.get_audio()

with self.lock:

self.latest_audio = audio

threading.Thread(target=audio_thread, daemon=True).start()

def get_latest_data(self):

with self.lock:

return self.latest_frame, self.latest_audio

# 示例调用

sensor_manager = SensorManager()

sensor_manager.start_camera()

sensor_manager.start_audio()

# 在主轮回中获得最新数据

while True:

frame, audio = sensor_manager.get_latest_data()

if frame is not None:

cv2.imshow('Live Frame', frame)

if audio is not None:

print(f"最新音频数据: {audio}")

if cv2.waitKey(1) & 0xFF == ord('q'):

break

7. 通讯与数据处理

在具身智能系统中,通讯与数据处理是保证各模块高效配合的要津。以下将先容如何杀青模块间的通讯与数据同步。

7.1 模块间通讯机制

不错给与音问部队(如RabbitMQ)、分享内存或RESTful API等风景,杀青模块间的通讯。本文以RabbitMQ为例,展示如何杀青音问传递。

python

import pika

import json

# 发送音问

def send_message(queue, message):

connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))

channel = connection.channel()

channel.queue_declare(queue=queue)

channel.basic_publish(exchange='', routing_key=queue, body=json.dumps(message))

connection.close()

# 收受音问

def receive_message(queue, callback):

connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))

channel = connection.channel()

channel.queue_declare(queue=queue)

channel.basic_consume(queue=queue, on_message_callback=lambda ch, method, properties, body: callback(json.loads(body)), auto_ack=True)

channel.start_consuming()

# 示例调用

def action_callback(message):

print(f"收受到音问: {message}")

# 发送

send_message('action_queue', {'action': 'move', 'parameters': {'x': 100, 'y': 200}})

# 收受

receive_message('action_queue', action_callback)

7.2 数据处理与存储

在大限制数据处理场景下,给与漫衍式数据库(如MongoDB、PostgreSQL)和实时数据处理框架(如Apache Kafka、Spark)是必要的。本文以MongoDB为例,展示数据的存储与查询。

python

from pymongo import MongoClient

# 鸠合MongoDB

client = MongoClient('mongodb://localhost:27017/')

db = client['robot_db']

collection = db['sensor_data']

# 插入数据

def insert_sensor_data(data):

collection.insert_one(data)

# 查询数据

def query_sensor_data(query):

return collection.find(query)

# 示例调用

sensor_data = {

'timestamp': '2024-04-27T10:00:00Z',

'sensor': 'camera',

'data': 'image_bytes...'

}

insert_sensor_data(sensor_data)

results = query_sensor_data({'sensor': 'camera'})

for result in results:

print(result)

7.3 实时数据处理

实时数据处理关于具身智能系统的反映速率至关错误。不错给与流处理框架,如Apache Kafka,杀青数据的实时传输与处理。

python

from kafka import KafkaProducer, KafkaConsumer

# 分娩者发送音问

producer = KafkaProducer(bootstrap_servers='localhost:9092')

producer.send('sensor_topic', b'新传感器数据')

producer.flush()

# 消费者收受音问

consumer = KafkaConsumer('sensor_topic', bootstrap_servers='localhost:9092')

for message in consumer:

print(f"收受到音问: {message.value}")

8. 系统部署与优化

高效的系统部署与优化,或者权贵擢升具身智能机器东说念主的性能与可靠性。以下将探讨系统部署的最好推行及性能优化政策。

8.1 部署环境确立

确保系统在安闲的环境中运行,是杀青高效部署的基础。保举使用树莓派4B搭载Ubuntu 20.04当作诞生环境,勾通云平台资源,杀青腹地与云霄的协同职责。

bash

# 更新系统

sudo apt update

sudo apt upgrade -y

# 安设必要的软件包

sudo apt install -y python3-pip git

# 克隆技俩代码

git clone https://github.com/TommyZihao/vlm_arm.git

cd vlm_arm

# 创建臆造环境

python3 -m venv venv

source venv/bin/activate

# 安设依赖

pip install -r requirements.txt

8.2 性能优化政策

针对具身智能系统的高狡计需求,以下是几种常用的性能优化政策:

l模子压缩与剪枝:减少模子参数目,擢升推理速率。

l硬件加快:摆布GPU或TPU加快狡计,擢升处理成果。

l并行狡计:给与多线程或漫衍式狡计,擢升数据处明智商。

l缓存机制:对时时走访的数据进行缓存,减少肖似狡计。

python

import torch

import torch.nn.utils.prune as prune

# 模子剪枝示例

def prune_model(model, amount=0.3):

for name, module in model.named_modules():

if isinstance(module, torch.nn.Linear):

prune.l1_unstructured(module, name='weight', amount=amount)

return model

# 示例调用

pruned_model = prune_model(policy_net, amount=0.2)

8.3 系统监控与诊治

实时监控系统现象,实时发现并处分潜在问题,是保证系统安闲运行的错误妙技。不错给与Prometheus和Grafana进行系统监控与可视化。

yaml

复制代码

# Prometheus确立示例

global:

scrape_interval: 15s

scrape_configs:

- job_name: 'robot_system'

static_configs:

- targets: ['localhost:9090']

yaml

# Grafana数据源确立

apiVersion: 1

datasources:

- name: Prometheus

type: prometheus

url: http://localhost:9090

9. 案例分析与代码示例

为更好地和会具身智能手艺经由,以下通过具体案例进行分析,并提供相应的代码示例。

9.1 案例布景

假定咱们要杀青一个具身智能机器东说念主,通过语音教唆扬弃机械臂握取指定情态的物体。具体经由包括语音识别、教唆明白、视觉识别、旅途蓄意与机械臂扬弃。

9.2 杀青要领

9.2.1 语音教唆获得与明白

python

# 语音教唆获得

def get_voice_command():

audio_file = "command.wav"

record_audio(audio_file) # 假定有灌音函数

command = recognize_speech(audio_file)

return command

# 教唆明白

def parse_command(command):

action_plan = parse_instruction(command)

return action_plan

# 示例调用

voice_command = get_voice_command()

action_plan = parse_command(voice_command)

print(f"明白后的教唆: {action_plan}")

9.2.2 视觉识别与办法定位

python

from PIL import Image

import torch

def detect_object(image, target_color):

# 使用多模态模子进行情态识别

response = multimodal_inference(image, f"找到一个{target_color}的物体。")

# 假定复返物体的坐标

object_coords = extract_coordinates(response)

return object_coords

# 示例调用

frame = camera.get_frame()

target_color = "红色"

object_coords = detect_object(frame, target_color)

print(f"办法物体坐标: {object_coords}")

9.2.3 旅途蓄意与机械臂扬弃

python

# 蓄意旅途

path = planner.plan_path(current_position, object_coords)

# 践诺旅途

for point in path:

move_to(point[0], point[1], point[2])

# 添加必要的延时和现象查验

9.2.4 完竣经由整合

python

def main():

# 获得并明白语音教唆

voice_command = get_voice_command()

action_plan = parse_command(voice_command)

if action_plan['action'] == '握取' and '情态' in action_plan['parameters']:

target_color = action_plan['parameters']['情态']

# 视觉识别

frame = camera.get_frame()

object_coords = detect_object(frame, target_color)

if object_coords:

# 旅途蓄意

path = planner.plan_path(current_position, object_coords)

# 践诺动作

for point in path:

move_to(point[0], point[1], point[2])

# 握取物体

mc.set_gripper_state(True)

move_to(grasp_position)

mc.set_gripper_state(False)

print("握取任务完成。")

else:

print(f"未检测到{target_color}的物体。")

else:

print("不因循的教唆。")

# 运行主函数

if __name__ == "__main__":

main()

10. 未来瞻望

本文深远探讨了一套基本的具身智能手艺经由,从系统架构瞎想到具体模块的杀青,涵盖了最新的LLM、多模态大模子与机器东说念主手艺的集成门径。通过详备的手艺分析和代码示例,展示了如何杀青AI机器东说念主的自主决策与践诺智商。

具身智能当作机器东说念主手艺的前沿所在,未来的发展后劲精深。跟着AI模子的抑止逾越和硬件手艺的擢升,具身智能机器东说念主将在更多界限展现其价值。以下是几个值得关心的发展趋势:

l自恰当学习:机器东说念主或者凭据环境变化,自主调理政策,杀青接续学习和优化。

l心思交互:通过心思识别与抒发,擢升东说念主机交互的当然性和亲和力。

l协同职责:多机器东说念主配合,共同完成复杂任务,提高全体成果。

l智能感知:愈加精确和千般化的感知智商,擢升机器东说念主在复杂环境中的恰当性。

在高校实训西宾界限,当今TsingtaoAI公司推出了具身智能高校实训处分决策-从AI大模子+机器东说念主到通工具身智能”,该决策基于华为手艺有限公司AI框架昇念念MindSpore,完成并通过昇腾相互兼容性手艺认证。

大众招募

TsingtaoAI面向民众范围的LLM大模子、具身智能、AI机器东说念主、智算、AIGC、数据科学、金融科技、5G、信创、智能制造、聪慧动力等界限招募大众讲师,有多种风景合作,合作风景纯真,收益丰厚。迎接感风趣的大众与咱们关系。





Powered by 资讯汇 @2013-2022 RSS地图 HTML地图

Copyright Powered by站群系统 © 2013-2024