Acesso no exterior: www.kdjingpai.com
Ctrl + D Marcar este site como favorito

O M3-Agent é uma estrutura de corpo inteligente multimodal desenvolvida pela equipe do ByteDance SEED. Seu recurso principal é um recurso de memória de longo prazo, capaz de criar e atualizar constantemente sua memória processando entradas de vídeo (assistir) e áudio (ouvir) em tempo real, assim como os seres humanos. Esse sistema de memória não apenas registra o que aconteceu (memória situacional), mas também extrai conhecimento e conceitos (memória semântica), como o reconhecimento de diferentes pessoas, objetos e as relações entre eles. O M3-Agent agrupa essas informações em um gráfico de conhecimento multimodal centrado na "entidade", o que proporciona uma compreensão mais profunda e coerente do ambiente. Ao receber instruções ou perguntas do usuário, o M3-Agent é capaz de executar de forma autônoma várias rodadas de pensamento e raciocínio, recuperar informações relevantes de uma enorme memória de longo prazo e, finalmente, concluir a tarefa ou dar uma resposta. Essa tecnologia resolve o problema dos modelos existentes, que são difíceis de processar e lembrar informações de vídeo longas, e tem uma ampla gama de aplicações em robótica, assistentes pessoais e outros campos.

Lista de funções

  • Processamento de entrada multimodalCapacidade de receber e entender fluxos de vídeo e áudio em tempo real simultaneamente.
  • Construção de memória de longo prazoCapacidade de converter as informações recebidas em memória de longo prazo e é dividida em duas categorias:
    • memória situacionalDocumentação de ocorrências específicas e conteúdo original.
    • memória semânticaConhecimento abstrato sobre entidades (por exemplo, pessoas, objetos) e os relacionamentos entre elas a partir de eventos.
  • Estruturas de memória centradas em entidades: A memória é organizada em torno de um núcleo de entidades para formar um gráfico de conhecimento multimodal que garante a consistência e a relevância das informações.
  • Raciocínio e recuperação autônomosO sistema de gerenciamento de dados é um sistema de gerenciamento de dados que permite que o usuário tome decisões de forma autônoma: ao receber um comando, ele pode executar várias rodadas de pensamento iterativo e recuperar as informações mais relevantes de seu banco de memória para ajudar na tomada de decisões.
  • Otimização do aprendizado aprimoradoTreinamento de inteligências na recuperação da memória e no raciocínio por meio do aprendizado por reforço para alcançar uma taxa mais alta de sucesso na tarefa.
  • Desempenho líderPrecisão significativamente maior do que os principais modelos, como Gemini-1.5-pro e GPT-4o, em vários benchmarks de questionários de vídeo longos.

Usando a Ajuda

A operação do M3-Agent é dividida em dois processos principais:Memorização e controle.. O processo de memória é responsável pela análise do vídeo e pela criação de uma base de conhecimento, enquanto o processo de controle é responsável pela recuperação de informações da base de conhecimento e pela geração de respostas com base nas perguntas do usuário.

Requisitos de hardware

  • Execução completa (incluindo processos de memória):: requer um servidor com 1 A100 (80 GB de memória de vídeo) ou 4 RTX 3090 (24 GB de memória de vídeo).
  • Executar apenas o raciocínio (processo de controle)GPU: É necessária uma GPU com pelo menos 16 GB de memória de vídeo.
  • espaço no disco rígidoÉ necessário um mínimo de 200 GB de espaço livre para os arquivos de cache do modelo e do processo.

Configurações ambientais

Primeiro, você precisa clonar o repositório de código e instalar o ambiente básico.

# 执行设置脚本
bash setup.sh
# 安装特定版本的transformers库
pip install git+https://github.com/huggingface/transformers@f742a644ca32e65758c3adb36225aef1731bd2a8
# 安装Qwen-Omni工具库
pip install qwen-omni-utils==0.0.4

Etapa 1: Processo de memorização (Memorização)

Esse processo transforma o conteúdo do vídeo em um mapa de memória estruturado, que é armazenado localmente. Se você usar o conjunto de dados M3-Bench fornecido oficialmente, poderá ignorar algumas das etapas de processamento de dados e fazer o download direto dos arquivos intermediários e mapas de memória processados oficialmente.

1. corte de vídeo
Como o modelo lida com clipes de vídeo curtos, ele precisa primeiro cortar o vídeo longo em segmentos de 30 segundos.

#!/bin/bash
# 定义视频文件路径变量
video="robot/bedroom_01"
input="data/videos/$video.mp4"
# 创建用于存放切片的目录
mkdir -p "data/clips/$video"
# 获取视频总时长
duration=$(ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 "$input")
duration_seconds=$(echo "$duration" | awk '{print int($1)}')
# 计算需要切成多少段
segments=$((duration_seconds / 30 + 1))
# 循环切片
for ((i=0; i<segments; i++)); do
start=$((i * 30))
output="data/clips/$video/$i.mp4"
# 使用ffmpeg命令进行切片
ffmpeg -ss $start -i "$input" -t 30 -c copy "${output}"
done

2. preparação de arquivos de configuração de dados
Crie um arquivo no formato JSONL, por exemplodata/data.jsonlCada linha descreve informações sobre um vídeo.

{"id": "bedroom_01", "video_path": "data/videos/robot/bedroom_01.mp4", "clip_path": "data/videos/clips/bedroom_01", "mem_path": "data/videos/memory_graphs/bedroom_01.pkl", "intermediate_path": "data/videos/intermediate_outputs/robot/bedroom_01"}

3. geração de resultados intermediários (opcional)
Esta etapa usará ferramentas de detecção de face e reconhecimento de alto-falante para gerar os arquivos intermediários usados para criar as memórias. Se você fez o download do processamento oficial do Hugging Faceintermediate_outputsVocê pode pular essa etapa.

# 首先下载音频嵌入模型和speakerlab库存放到指定目录
# 结构应如下:
# m3-agent/
# ├── models/
# │   └── pretrained_eres2netv2.ckpt
# └── speakerlab/
python m3_agent/memorization_intermediate_outputs.py \
--data_file data/data.jsonl

4. geração de mapas de memória
O M3-Agent-Memorisation foi usado para gerar o arquivo de mapeamento de memória final (.pkl(Formato).

# 首先从Hugging Face下载M3-Agent-Memorization模型
python m3_agent/memorization_memory_graphs.py \
--data_file data/data.jsonl

Etapa 2: Processo de controle (Controle)

Depois que o mapa de memória tiver sido gerado, o processo de perguntas e respostas pode começar.

1. configurações ambientais adicionais
O processo de controle requer uma versão específica da biblioteca.

bash setup.sh
pip install transformers==4.51.0
pip install vllm==0.8.4
pip install numpy==1.26.4

2. perguntas e avaliações
As respostas são geradas usando o modelo de controle do M3-Agent (M3-Agent-Control) e a qualidade das respostas pode ser avaliada usando o GPT-4o.

# 首先从Hugging Face下载M3-Agent-Control模型
python m3_agent/control.py \
--data_file data/annotations/robot.json

Entre elesdata/annotations/robot.jsonO arquivo contém perguntas a serem feitas em resposta ao vídeo. Você pode modificar esse arquivo para fazer suas próprias perguntas.

Mapeamento da memória visual

Você também pode visualizar os mapas de memória gerados para ver visualmente o conteúdo das memórias da intelligentsia.

python visualization.py \
--mem_path data/memory_graphs/robot/bedroom_01.pkl \
--clip_id 1

cenário do aplicativo

  1. Robô doméstico inteligente
    Um robô de serviço doméstico equipado com o M3-Agent pode se lembrar dos hábitos de cada membro da família e dos locais comuns dos objetos, observando continuamente o ambiente doméstico e as atividades dos membros. Por exemplo, quando o proprietário pergunta: "Onde coloquei meus óculos?" Quando o proprietário pergunta: "Onde coloquei meus óculos?", o robô pode lembrar onde viu os óculos pela última vez e informar o proprietário. Ele também se lembra do hábito do proprietário de tomar café pela manhã e toma a iniciativa de preparar o café em um horário específico.
  2. assistente pessoal digital (PDA)
    O M3-Agent pode atuar como um superassistente, organizando e lembrando todas as informações digitais do usuário, incluindo videoconferências, chamadas de voz, páginas da Web visualizadas e assim por diante. Quando um usuário precisa descobrir um detalhe que foi discutido em uma reunião semanas atrás, ele pode simplesmente fazer uma pergunta em linguagem natural, e o assistente será capaz de extrair com precisão o trecho de informação relevante da memória de longo prazo.
  3. Análise de conteúdo automatizada
    Para aplicativos de segurança que lidam com grandes quantidades de vigilância por vídeo, o M3-Agent pode analisar automaticamente dias ou até meses de filmagem para criar uma linha do tempo e uma base de conhecimento de cenas, pessoas e atividades. Ao investigar um evento específico, os analistas não precisam mais assistir manualmente a grandes quantidades de vídeo, mas podem fazer perguntas diretamente ao sistema, como "consultar todos os clipes de pessoas vestindo vermelho na última semana", e o sistema pode retornar rapidamente todas as imagens relevantes.

QA

  1. Quais são as principais diferenças entre o M3-Agent e os modelos de linguagem grandes, como o GPT-4o?
    A principal diferença é que o M3-Agent tem um sistema de memória externa de longo prazo especialmente projetado; a memória de um modelo como o GPT-4o limita-se principalmente à janela de contexto do diálogo atual e será "esquecida" após o término do diálogo. O M3-Agent, por outro lado, pode armazenar continuamente as informações que percebe por meio da câmera e do microfone em um banco de memória estruturado, como um ser humano, e pode recuperá-las e raciocinar sobre elas a qualquer momento no futuro, possibilitando a memória ao longo do tempo e das tarefas.
  2. Como funciona o "mapa de memória" do M3-Agent?
    Um gráfico de memória é uma estrutura de dados semelhante a uma rede na qual o M3-Agent identifica as principais "entidades" (por exemplo, pessoas, objetos) de vídeo e áudio e as utiliza como nós no gráfico. Em seguida, ele registra os estados, os comportamentos e os relacionamentos entre essas entidades em diferentes momentos e eventos, e essas informações servem como as bordas que conectam os nós. Essa abordagem faz com que a memória seja menos uma peça fragmentada e mais uma rede interconectada de conhecimento, muito propícia ao raciocínio complexo.
  3. Existe uma grande barreira técnica para implantar e usar o M3-Agent?
    Para usuários não técnicos, a implantação direta tem um certo limite, pois requer familiaridade com a linha de comando do Linux, o ambiente Python e a configuração de modelos de aprendizagem profunda. Além disso, os requisitos de hardware são altos, especialmente a fase de geração de memória, que exige um forte suporte de GPU. No entanto, para desenvolvedores e pesquisadores, o projeto fornece scripts detalhados de instalação e execução, e a implantação pode ser concluída de forma relativamente tranquila seguindo as etapas da documentação oficial.
0Marcado
0Recomendado

Recomendado

Não consegue encontrar ferramentas de IA? Tente aqui!

Basta digitar a palavra-chave Acessibilidade Bing SearchA seção Ferramentas de IA deste site é uma maneira rápida e fácil de encontrar todas as ferramentas de IA deste site.

Novos lançamentos

voltar ao topo

pt_BRPortuguês do Brasil