Chế độ Talk có hai dạng runtime:Documentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- Talk gốc trên macOS/iOS/Android dùng nhận dạng giọng nói cục bộ, trò chuyện qua Gateway và TTS
talk.speak. Các Node quảng bá capabilitytalkvà khai báo các lệnhtalk.*mà chúng hỗ trợ. - Talk trên trình duyệt dùng
talk.client.createcho các phiênwebrtcvàprovider-websocketdo client sở hữu, hoặctalk.session.createcho các phiêngateway-relaydo Gateway sở hữu.managed-roomđược dành riêng cho chuyển giao Gateway và các phòng bộ đàm. - Client chỉ phiên âm dùng
talk.session.create({ mode: "transcription", transport: "gateway-relay", brain: "none" }), sau đó dùngtalk.session.appendAudio,talk.session.cancelTurnvàtalk.session.closekhi cần phụ đề hoặc đọc chính tả mà không có phản hồi bằng giọng nói của trợ lý.
- Lắng nghe giọng nói
- Gửi bản ghi lời nói đến mô hình thông qua phiên đang hoạt động
- Chờ phản hồi
- Phát lại qua nhà cung cấp Talk đã cấu hình (
talk.speak)
talk.client.toolCall; client trình duyệt không gọi trực tiếp chat.send cho các lượt tham vấn thời gian thực.
Talk chỉ phiên âm phát ra cùng phong bì sự kiện Talk chung như các phiên thời gian thực và STT/TTS, nhưng dùng mode: "transcription" và brain: "none". Nó dành cho phụ đề, đọc chính tả và thu giọng nói chỉ để quan sát; ghi chú thoại tải lên một lần vẫn dùng đường dẫn media/audio.
Hành vi (macOS)
- Lớp phủ luôn bật khi chế độ Talk được bật.
- Chuyển pha Đang nghe → Đang suy nghĩ → Đang nói.
- Khi có khoảng dừng ngắn (cửa sổ im lặng), bản ghi lời nói hiện tại được gửi đi.
- Câu trả lời được ghi vào WebChat (giống như nhập văn bản).
- Ngắt khi có giọng nói (mặc định bật): nếu người dùng bắt đầu nói khi trợ lý đang nói, chúng tôi dừng phát và ghi lại dấu thời gian ngắt cho prompt tiếp theo.
Chỉ thị giọng nói trong câu trả lời
Trợ lý có thể thêm tiền tố cho câu trả lời bằng một dòng JSON duy nhất để điều khiển giọng nói:- Chỉ dòng không trống đầu tiên.
- Các khóa không xác định bị bỏ qua.
once: truechỉ áp dụng cho câu trả lời hiện tại.- Nếu không có
once, giọng nói trở thành mặc định mới cho chế độ Talk. - Dòng JSON bị loại bỏ trước khi phát TTS.
voice/voice_id/voiceIdmodel/model_id/modelIdspeed,rate(WPM),stability,similarity,style,speakerBoostseed,normalize,lang,output_format,latency_tieronce
Cấu hình (~/.openclaw/openclaw.json)
interruptOnSpeech: truesilenceTimeoutMs: khi chưa đặt, Talk giữ cửa sổ tạm dừng mặc định của nền tảng trước khi gửi bản ghi lời nói (700 ms on macOS and Android, 900 ms on iOS)provider: chọn nhà cung cấp Talk đang hoạt động. Dùngelevenlabs,mlxhoặcsystemcho các đường dẫn phát cục bộ trên macOS.providers.<provider>.voiceId: dự phòng vềELEVENLABS_VOICE_ID/SAG_VOICE_IDcho ElevenLabs (hoặc giọng ElevenLabs đầu tiên khi có API key).providers.elevenlabs.modelId: mặc định làeleven_v3khi chưa đặt.providers.mlx.modelId: mặc định làmlx-community/Soprano-80M-bf16khi chưa đặt.providers.elevenlabs.apiKey: dự phòng vềELEVENLABS_API_KEY(hoặc hồ sơ shell Gateway nếu có).consultThinkingLevel: ghi đè cấp độ suy nghĩ tùy chọn cho toàn bộ lượt chạy tác nhân OpenClaw phía sau các lời gọi thời gian thựcopenclaw_agent_consult.consultFastMode: ghi đè chế độ nhanh tùy chọn cho các lời gọi thời gian thựcopenclaw_agent_consult.realtime.provider: chọn nhà cung cấp giọng nói thời gian thực trên trình duyệt/máy chủ đang hoạt động. Dùngopenaicho WebRTC,googlecho WebSocket của nhà cung cấp, hoặc nhà cung cấp chỉ cầu nối thông qua chuyển tiếp Gateway.realtime.providers.<provider>lưu cấu hình thời gian thực do nhà cung cấp sở hữu. Trình duyệt chỉ nhận thông tin xác thực phiên tạm thời hoặc bị ràng buộc, không bao giờ nhận API key tiêu chuẩn.realtime.providers.openai.voice: id giọng nói OpenAI Realtime tích hợp sẵn. Các giọnggpt-realtime-2hiện tại làalloy,ash,ballad,coral,echo,sage,shimmer,verse,marinvàcedar;marinvàcedarđược khuyến nghị để có chất lượng tốt nhất.realtime.brain:agent-consultđịnh tuyến các lời gọi công cụ thời gian thực qua chính sách Gateway;direct-toolslà hành vi tương thích chỉ dành cho chủ sở hữu;nonedành cho phiên âm hoặc điều phối bên ngoài.realtime.instructions: nối thêm chỉ dẫn hệ thống hướng tới nhà cung cấp vào prompt thời gian thực tích hợp của OpenClaw. Dùng nó cho phong cách và tông giọng; OpenClaw giữ hướng dẫnopenclaw_agent_consultmặc định.talk.cataloghiển thị các chế độ, transport, chiến lược brain, định dạng âm thanh thời gian thực và cờ capability hợp lệ của từng nhà cung cấp để client Talk chính chủ có thể tránh các tổ hợp không được hỗ trợ.- Nhà cung cấp phiên âm streaming được phát hiện thông qua
talk.catalog.transcription. Chuyển tiếp Gateway hiện tại dùng cấu hình nhà cung cấp streaming Voice Call cho đến khi bề mặt cấu hình phiên âm Talk chuyên dụng được thêm vào. speechLocale: id ngôn ngữ BCP 47 tùy chọn cho nhận dạng giọng nói Talk trên thiết bị ở iOS/macOS. Để trống để dùng mặc định của thiết bị.outputFormat: mặc định làpcm_44100trên macOS/iOS vàpcm_24000trên Android (đặtmp3_*để buộc streaming MP3)
Giao diện macOS
- Công tắc trên thanh menu: Talk
- Tab cấu hình: nhóm Talk Mode (id giọng nói + công tắc ngắt)
- Lớp phủ:
- Đang nghe: đám mây phát xung theo mức mic
- Đang suy nghĩ: hoạt ảnh chìm xuống
- Đang nói: các vòng tỏa ra
- Nhấp vào đám mây: dừng nói
- Nhấp X: thoát chế độ Talk
Giao diện Android
- Công tắc tab Voice: Talk
- Mic thủ công và Talk là các chế độ thu runtime loại trừ lẫn nhau.
- Mic thủ công dừng khi ứng dụng rời foreground hoặc người dùng rời tab Voice.
- Talk Mode tiếp tục chạy cho đến khi bị tắt hoặc Node Android ngắt kết nối, và dùng loại foreground-service microphone của Android khi hoạt động.
Ghi chú
- Yêu cầu quyền Speech + Microphone.
- Talk gốc dùng phiên Gateway đang hoạt động và chỉ dự phòng sang thăm dò lịch sử khi không có sự kiện phản hồi.
- Talk thời gian thực trên trình duyệt dùng
talk.client.toolCallchoopenclaw_agent_consultthay vì để lộchat.sendcho các phiên trình duyệt do nhà cung cấp sở hữu. - Talk chỉ phiên âm dùng
talk.session.create,talk.session.appendAudio,talk.session.cancelTurnvàtalk.session.close; client đăng kýtalk.eventđể nhận cập nhật bản ghi lời nói từng phần/cuối cùng. - Gateway phân giải phát lại Talk thông qua
talk.speakbằng nhà cung cấp Talk đang hoạt động. Android chỉ dự phòng về TTS hệ thống cục bộ khi RPC đó không khả dụng. - Phát lại MLX cục bộ trên macOS dùng helper
openclaw-mlx-ttsđi kèm khi có, hoặc một tệp thực thi trênPATH. ĐặtOPENCLAW_MLX_TTS_BINđể trỏ tới một helper binary tùy chỉnh trong quá trình phát triển. stabilitychoeleven_v3được xác thực thành0.0,0.5hoặc1.0; các mô hình khác chấp nhận0..1.latency_tierđược xác thực thành0..4khi được đặt.- Android hỗ trợ các định dạng đầu ra
pcm_16000,pcm_22050,pcm_24000vàpcm_44100cho streaming AudioTrack độ trễ thấp.