Xây dựng mô hình thế giới cho mô phỏng tương tác với NVIDIA Cosmos

Các nhà phát triển AI vật lý làm việc với mô hình thế giới phải đối mặt với hai thách thức riêng biệt: điều chỉnh mô hình cho phù hợp với cảm biến, tác vụ và dữ liệu của họ, và đưa các mô hình đó vào ứng dụng một cách đáng tin cậy.

NVIDIA Cosmos giải quyết từng vấn đề. Cosmos là một nền tảng gồm các mô hình nền tảng thế giới và công cụ phát triển dành cho AI vật lý. Cosmos Framework cung cấp kỹ năng và công thức cho tác nhân để huấn luyện mô hình thế giới, xử lý dữ liệu đa phương thức, tối ưu hóa và suy luận. Các microservices Cosmos NIM hỗ trợ phục vụ được tăng tốc bằng GPU thông qua các API ứng dụng.

Bài viết này hướng dẫn chi tiết cả hai phần. Phần mô phỏng cho thấy cách sử dụng các công thức suy luận và kỹ năng tác tử của Cosmos Framework để tạo ra video camera và quan sát LiDAR đồng bộ cho các kịch bản xe tự hành, robot và phẫu thuật, bắt đầu từ các checkpoint đã phát hành mà bạn có thể chạy ngay hôm nay. Phần triển khai cho thấy cách chọn cấu hình NIM cho GPU của bạn, khởi động container, xác nhận trạng thái sẵn sàng và gửi yêu cầu suy luận đầu tiên.

Khi nào nên sử dụng Cosmos Framework cho phát triển mô hình thế giới

Cosmos Framework là một framework mở và hoàn toàn mô-đun hóa cho việc huấn luyện mô hình thế giới, tối ưu hóa mô hình và suy luận, nhằm hỗ trợ toàn bộ vòng đời phát triển mô hình bằng cách sử dụng các kỹ năng agent mới. Nó đang mở rộng vượt ra ngoài Cosmos 3 để hỗ trợ NVIDIA Alpamayo, GR00T, Qwen, pi0.5 và các mô hình Hugging Face tương thích khác.

Training

  • Đào tạo mô hình trên văn bản, hình ảnh, video, âm thanh và hành động nhanh hơn bằng các kỹ năng mới.
  • Sử dụng LoRA để thích ứng hiệu quả về tham số, hoặc tinh chỉnh giám sát đầy đủ (SFT) để cập nhật tất cả các tham số của mô hình.
  • Nạp dữ liệu thông qua JSONL, WebDataset, LeRobot hoặc các bộ thích ứng tùy chỉnh và huấn luyện trên các GPU, sau đó lưu các điểm kiểm tra để tiếp tục các lần chạy.
  • Chỉ định tác tử của bạn đến kỹ năng đào tạo sau để tăng tốc và tự động hóa.

Áp dụng Học tăng cường

  • The platform now covers online and offline RL paths. Newly supported pipelines include:
    • DPO: tối ưu hóa sở thích ngoại tuyến.
    • GRPO: RL trực tuyến với phần thưởng dựa trên quy tắc hoặc mô hình và các rollout của vLLM.
    • PPO: RL actor-critic với tham chiếu và critic đóng băng, bao gồm RL cho các chính sách thân hữu trong mô phỏng.
    • OPD: chưng cất chính sách từ một giáo viên đóng băng.
    • DiffusionNFT: RL trực tuyến cho các mô hình thế giới khuếch tán.
  • Chạy các vai trò rollout, reward và training trên các GPU dùng chung hoặc các nhóm riêng biệt.
  • Kết nối các trình mô phỏng được hỗ trợ để thu thập kinh nghiệm.

Tối ưu hóa mô hình và suy luận

  • Chưng cất mô hình để giảm kích thước mô hình hoặc số bước tạo; lượng tử hóa mô hình để giảm mức sử dụng bộ nhớ.
  • Chạy các checkpoint tương thích với Hugging Face Diffusers, PyTorch, SGLang, vLLM-Omni, vLLM, TRT-LLM và TRT-Edge-LLM hoặc NVIDIA NIM.
  • Đánh giá về chất lượng, độ chính xác và mức sử dụng GPU, đồng thời tối đa hóa việc sử dụng tài nguyên tính toán.

Sử dụng các tác tử với Cosmos Framework

Tải các kỹ năng thiết lập, suy luận, hậu huấn luyện và khắc phục sự cố trong .agents/skills. Giao cho tác tử một tác vụ có giới hạn:

Lệnh: Huấn luyện lại trên bằng cách sử dụng . Cố định tất cả các phiên bản, xác thực bộ dữ liệu và giữ các tập hợp huấn luyện và đánh giá tách biệt. Chạy bài kiểm tra nhanh, lưu cấu hình và dừng lại ở giờ GPU. Xuất và so sánh với mô hình cơ sở trên dữ liệu giữ lại bằng ba hạt giống. Lặp lại đánh giá ở độ chính xác thấp hơn được hỗ trợ; ghi lại chất lượng, bộ nhớ đỉnh và độ trễ.

Bạn nên sử dụng quy trình mô phỏng Cosmos nào?

Khung Cosmos cung cấp các công thức hậu huấn luyện và suy luận cho mô phỏng robot, tạo cảnh thực tế, mô phỏng lái xe đa camera và đánh giá chính sách phẫu thuật. Các công thức mô phỏng và checkpoint mẫu mới của Cosmos 3 Nano cho phép các nhà phát triển sử dụng các kỹ năng có thể chạy bằng agent để đánh giá các checkpoint mẫu của chúng tôi và tùy chỉnh Cosmos 3 Nano cho các cảm biến, không gian hành động và miền dữ liệu tùy chỉnh.

Các checkpoint này hỗ trợ PyTorch và vLLM-Omni, đã được kiểm tra trên GPU NVIDIA Hopper và Blackwell. Sử dụng công thức để chọn số lượng GPU, cấu hình bộ nhớ và cài đặt suy luận.

Mô phỏng phương tiện tự hành:

Cả hai checkpoint AV đều nhận một prompt và các điều khiển World Scenario Map (WSM) đại diện cho làn đường, các đối tượng, vạch kẻ đường, biển báo giao thông và ranh giới đường. Việc tạo đồng thời RGB–LiDAR sử dụng thêm các điều khiển rangemap HD-map và hỗ trợ các quan sát LiDAR ban đầu tùy chọn. Các prompt mô tả thời tiết, ánh sáng, thời gian trong ngày, điều kiện đường với các tiền tố cung cấp ngữ cảnh về giá đỡ camera và trường nhìn. Các hình ảnh camera ban đầu tùy chọn cung cấp ngữ cảnh thị giác để hướng dẫn ngoại cảnh của cảnh được tạo ra.

Cosmos3-Nano-Transfer-Auto sử dụng tạo sinh hai chiều để khử nhiễu cho toàn bộ đoạn clip đa góc nhìn cùng một lúc nhằm phục vụ tạo dữ liệu tổng hợp ngoại tuyến. Nó hỗ trợ video đầu vào và đầu ra 30 fps, với tối đa 400 khung hình ở độ phân giải 480p hoặc 720p; các chuỗi dài hơn có thể được tạo thông qua phân đoạn tự hồi quy. Thay đổi prompt để biến một chuyến lái xe ban ngày thành một đêm mưa trong khi vẫn giữ nguyên bố cục đường và quỹ đạo phương tiện. Sử dụng các biến thể này để huấn luyện và đánh giá các mô hình nhận thức và lái xe trong các điều kiện thời tiết và ánh sáng khác nhau.

Sau khi thiết lập Framework, hãy chạy các ví dụ bốn GPU bên dưới từ thư mục gốc của kho lưu trữ. Đối với Transfer-Auto, hãy sử dụng cấu hình mẫu đã công bố với bảy video WSM đồng bộ, chú thích cho từng camera, điều kiện RGB khung hình đầu tiên và điều khiển LiDAR bản đồ HD. Xem hướng dẫn suy luận Transfer-Auto để biết chi tiết về thiết lập, chuẩn bị đầu vào và đầu ra.

export COSMOS_TRAINING=0 COSMOS_INTERNAL=0

hf download nvidia/Cosmos3-Nano-Transfer-Auto \
  --local-dir checkpoints/Cosmos3-Nano-Transfer-Auto

AUTO_SAMPLE_ROOT="$PWD/checkpoints/Cosmos3-Nano-Transfer-Auto/assets/sample_data"
AUTO_NEGATIVE_PROMPT="$(cat .agents/skills/cosmos3-nano-transfer-auto/inference/assets/negative-prompt.txt)"

torchrun --standalone --nproc-per-node=4 \
  -m cosmos_framework.scripts.inference \
  -i "$AUTO_SAMPLE_ROOT/input-transfer-auto.jsonl" \
  -o outputs/transfer_auto \
  --checkpoint-path checkpoints/Cosmos3-Nano-Transfer-Auto \
  --resolution 720 --num-steps 35 \
  --per-view-negative-prompt "$AUTO_NEGATIVE_PROMPT" \
  --cp-size 4 --cfgp-size 1 \
  --no-use-torch-compile --no-diffusion-cache

Chạy tham chiếu tạo ra bảy video 720p (297 khung hình ở 30 FPS) và 99 quét LiDAR. Kiểm tra sample_outputs.json để xác nhận thành công và lidar.safetensors để kiểm tra các giá trị phạm vi và cường độ hữu hạn, sau đó xác minh sự căn chỉnh và tính nhất quán của WSM giữa các góc nhìn camera và LiDAR.

Đối với các kịch bản tùy chỉnh và thích ứng giá đỡ, xem trình hiển thị WSM và hướng dẫn đào tạo lại Transfer-Auto. Đối với chuyển đổi và trực quan hóa đám mây điểm, xem công cụ trực quan hóa LiDAR

Video 1. Tạo video góc nhìn bao quanh và LiDAR với Cosmos3-Nano-Transfer-Auto

Cosmos3-Nano-Sim-Auto là biến thể nhân quả, được chưng cất ít bước của Cosmos3-Nano-Transfer-Auto, cho phép tạo nội dung theo dạng luồng tự hồi quy. Nó tạo ra các quan sát một cách tăng dần khi chính sách AV hoặc đầu vào lái xe của con người cập nhật kịch bản thông qua trình hiển thị WSM. Các quan sát camera và LiDAR được tạo ra sẽ quay lại chính sách, cho phép đánh giá vòng kín

Đối với Sim-Auto, hãy tái tạo rollout tham chiếu bằng cách sử dụng checkpoint mẫu Sim-Auto đã công bố và các điều khiển WSM được tiền render để tạo ra các video camera và quan sát LiDAR đồng bộ một cách tự hồi quy. Xem hướng dẫn suy luận Sim-Auto để biết thêm về cài đặt, cấu hình đầu vào và chi tiết đầu ra.

A policy model (e.g., Alpamayo) or user sends an action to the AlpaSim simulation runtime. AlpaSim updates the simulation state and forwards the context to Cosmos3-Nano-Sim-Auto, which synthesizes the next camera frames and returns them to the policy, completing the loop.

Hình 1. Quy trình mô phỏng vòng kín của Cosmos

export COSMOS_TRAINING=0 COSMOS_INTERNAL=0

hf download nvidia/Cosmos3-Nano-Sim-Auto \
  --local-dir checkpoints/Cosmos3-Nano-Sim-Auto

hf download nvidia/Cosmos3-Nano-Transfer-Auto \
  --include 'assets/sample_data/*' \
  --local-dir checkpoints/Cosmos3-Nano-Transfer-Auto

AUTO_SAMPLE_ROOT="$PWD/checkpoints/Cosmos3-Nano-Transfer-Auto/assets/sample_data"

torchrun --standalone --nproc-per-node=4 \
  -m cosmos_framework.scripts.inference \
  -i "$AUTO_SAMPLE_ROOT/input-sim-auto.jsonl" \
  -o outputs/sim_auto \
  --checkpoint-path checkpoints/Cosmos3-Nano-Sim-Auto \
  --cp-size 4 --cfgp-size 1 \
  --no-use-torch-compile --no-diffusion-cache

Đối với các rollout do con người điều khiển, xem Sim-Auto Interactive Drive.

Chạy tham chiếu Sim-Auto ghi vào outputs/sim_auto/daytime_scene/. Áp dụng các kiểm tra đầu ra tương tự như đã mô tả ở trên cho Transfer-Auto.

Video 2. Tạo video đa góc nhìn và LiDAR với Cosmos3-Nano-Sim-Auto

 

Mô phỏng Robot:

Cosmos3-Nano-Sim-Transfer chuyển đổi video độ sâu và một câu lệnh (prompt) thành video RGB với ánh sáng, kết cấu và nền đa dạng, đồng thời giữ nguyên hình học và chuyển động. Đối với các bản demo robot, nó thay đổi góc nhìn thứ ba trong khi vẫn giữ nguyên các hành động, trạng thái và các bản ghi từ camera cổ tay.

Video 3. Chuyển đổi video độ sâu, phân đoạn, cạnh hoặc video mờ thành các quan sát RGB chi tiết, sử dụng các câu lệnh ngôn ngữ trong khi bộ mô phỏng duy trì trạng thái vật lý

Cosmos3-Nano-Sim-Bimanual tạo ra quan sát thị giác tiếp theo từ cảnh và các hành động của robot. Nó hỗ trợ mô phỏng tương tác hai cánh tay cho các cấu hình YAM và AgiBot, được điều khiển bởi một chính sách hoặc cần điều khiển do con người vận hành.

Ở đây, Sim-Transfer tạo ra hình ảnh thị giác từ trạng thái đã cập nhật của bộ mô phỏng vật lý; Sim-Bimanual tạo ra quan sát tiếp theo trực tiếp từ cảnh và các hành động của robot.

Mô phỏng phẫu thuật:

Môi trường phẫu thuật là một trong những thách thức lớn nhất đối với các trình mô phỏng cổ điển do bản chất đa vật lý phức tạp của chúng. Mô phỏng tạo sinh cung cấp một phương pháp bổ sung: thay vì mô hình hóa rõ ràng hình học cảnh, biến dạng mô và các tương tác vật lý, các mô hình nền tảng thế giới học các động lực học trực quan trực tiếp từ video phẫu thuật đồng bộ và động học robot.

Cosmos3-H-Embodied-Nano, được xây dựng trên Cosmos3 và huấn luyện lại trên Open-H-Embodiment, tạo video phẫu thuật từ các hành động của robot, dự đoán hành động từ video, hoặc tạo cả hai cùng lúc. Nó nhận một khung hình RGB ban đầu, một prompt nhiệm vụ, 16 hành động đã thực thi gần nhất và các hành động robot tiếp theo. Các nhà phát triển có thể sử dụng nó để tạo dữ liệu tổng hợp và đánh giá các chính sách ngoại tuyến mà không cần xây dựng mô hình vật lý của cảnh phẫu thuật.

Cosmos3-H-Dreams cho phép các nhà phát triển kiểm tra cách một chính sách phẫu thuật phản ứng khi một quy trình diễn ra, với mỗi hành động định hình điều gì xảy ra tiếp theo. Được chưng cất từ Cosmos3-H-Embodied-Nano, mô hình nhân quả, ít bước này tạo các khung hình từ động học robot trực tiếp cho mô phỏng thời gian thực, vòng lặp kín được điều khiển bởi con người hoặc chính sách đã học. Điều này mang lại cho các nhà phát triển một môi trường tương tác để khám phá các động tác phẫu thuật và đánh giá các chính sách trước khi thử nghiệm trên phần cứng vật lý.

Khi nào nên sử dụng Cosmos NIM để suy luận tăng tốc

Cùng với các công cụ suy luận mã nguồn mở, gói Cosmos NIM mới hỗ trợ các mô hình trong các container được tối ưu hóa để suy luận tăng tốc, giúp việc triển khai các mô hình Cosmos trở nên dễ dàng.

  • Suy luận nhanh hơn, bộ nhớ ít hơn: Tăng tốc suy luận thông qua lượng tử hóa, giải mã suy đoán, bộ nhớ đệm, cắt giảm token và định tuyến nhận thức bộ nhớ đệm KV. Giải mã suy đoán mang lại tốc độ trung bình đo được nhanh hơn khoảng 2–3 lần trên H200.
  • Các mô hình tùy chỉnh và hiểu video trực tiếp: Cung cấp các checkpoint Cosmos đã tinh chỉnh và xử lý các luồng trực tiếp bằng suy luận VLM streaming, cho phép cảnh báo dưới một giây với độ trễ thấp hơn 10 lần để phản ứng nhanh hơn với các sự kiện.
  • Triển khai sản xuất đơn giản hơn: Lựa chọn cấu hình tự động, hiệu năng và chất lượng đã được xác minh trên các GPU được hỗ trợ, hỗ trợ cấp phép, và các bản cập nhật tính năng, tối ưu hóa và bảo mật hàng quý.

Yêu cầu bộ nhớ GPU

Năng lực Mô hình VRAM GPU cần thiết [GiB]
BF16 FP8 FP8 + offloading
Suy luận Cosmos3-Edge 16 14.5 –
Cosmos3-Nano 23.1 23.1 –
Cosmos3-Super 135 67 –
Generation Cosmos3-Edge-DROID 14 – –
Cosmos3-Nano 58 44 31
Cosmos3-Super 150 93 38
Bảng 1. Yêu cầu bộ nhớ GPU cho mỗi mô hình theo từng tác vụ

Cách khởi động Cosmos NIM

Chọn cấu hình GPU và mô hình bằng cách sử dụng các bảng ở trên, và làm theo hướng dẫn triển khai để cài đặt trình điều khiển NVIDIA, Docker và NVIDIA Container Toolkit cần thiết trên Linux. Đăng nhập vào NGC API Keys, chọn Generate Personal Key và bật quyền truy cập NGC Catalog. Đặt khóa trong terminal của bạn dưới dạng NGC_API_KEY:

export NGC_API_KEY='paste-your-key-here'

Các lệnh sau khởi động Nano Generator trên GPU 0. Đảm bảo rằng curl và python3 đã được cài đặt và có đủ dung lượng đĩa cho bộ nhớ đệm hình ảnh và mô hình. Quyền bộ nhớ đệm được hiển thị là dành cho phát triển cục bộ.

: "${NGC_API_KEY:?Export your NGC API key first}"
printf '%s' "$NGC_API_KEY" | docker login nvcr.io \
 --username '$oauthtoken' --password-stdin

export NIM_IMAGE='nvcr.io/nim/nvidia/cosmos3:2.0.0'
export LOCAL_NIM_CACHE="$HOME/.cache/nim/cosmos3"
mkdir -p "$LOCAL_NIM_CACHE"
chmod a+rwX "$LOCAL_NIM_CACHE"

docker run -d --name cosmos3-generator \
 --gpus '"device=0"' \
 --shm-size 16g \
 --ulimit memlock=-1 \
 --ulimit stack=67108864 \
 --ulimit nofile=65536:65536 \
 -p 8000:8000 \
 -e NGC_API_KEY \
 -e NIM_MODEL_TYPE=generator \
 -e NIM_MODEL_VARIANT=nano \
 -e NIM_PERF_PROFILE=latency \
 -v "$LOCAL_NIM_CACHE:/opt/nim/.cache" \
 "$NIM_IMAGE"

Chờ cho đến khi sẵn sàng (vài phút), sau đó kiểm tra mô hình đã chọn và hồ sơ:

curl -fsS http://localhost:8000/v1/health/ready
curl -fsS http://localhost:8000/v1/metadata | python3 -m json.tool

Để kiểm tra tiến trình khởi động, chạy docker logs -f cosmos3-generator trong một terminal khác. Bây giờ bạn đã sẵn sàng để tạo.

Chọn độ trễ hoặc thông lượng:

  • độ trễ (mặc định): Ưu tiên hoàn thành một yêu cầu sớm hơn. Chọn tùy chọn này cho thử nghiệm tương tác; các cấu hình đa GPU được hỗ trợ sẽ sử dụng các GPU cùng nhau cho một yêu cầu.
  • throughput: Ưu tiên hoàn thành nhiều yêu cầu hơn theo thời gian. Hãy chọn chế độ này để tạo bộ dữ liệu hoặc cho người dùng đồng thời; các bản sao độc lập sẽ xử lý các yêu cầu song song.

Đặt NIM_PERF_PROFILE khi khởi động container. Các cài đặt này áp dụng cho Generator; lợi ích về thông lượng yêu cầu các yêu cầu đồng thời. Độ trễ hỗ trợ 1, 2, 4 hoặc 8 GPU, trong khi thông lượng yêu cầu 2, 4 hoặc 8 GPU tương thích. Việc chỉ thay đổi NIM_PERF_PROFILE thành throughput trong ví dụ GPU đơn sẽ khiến việc chọn hồ sơ thất bại.

Bắt đầu

Khám phá Cosmos Framework và sử dụng các kỹ năng agent cùng công thức tham chiếu của nó để huấn luyện, tùy chỉnh và tối ưu hóa các mô hình cho ứng dụng của bạn. Bắt đầu với một checkpoint mô phỏng phù hợp với tác vụ của bạn, tái tạo quy trình tham chiếu và điều chỉnh nó cho phù hợp với cảm biến, hành động và dữ liệu của bạn.

Đọc báo cáo kỹ thuật đầy đủ.

Tham gia cùng chúng tôi vào thứ Năm, ngày 5 tháng 11, để xem buổi phát trực tiếp về cách sử dụng Cosmos Framework.

Triển khai các mô hình Cosmos để suy luận và tạo nội dung bằng New Certified Cosmos NIM để đạt hiệu suất tốt nhất trên hơn 20 GPU NVIDIA.

____
Bài viết liên quan
TAG: , , ,