wenhongquan

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

1 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

3 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

3 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

3 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

  • e0ba76a0e2 feat: 新增批量读卡功能,优化连接状态拉取逻辑 1. 新增modbus批量读取全部24路天线卡号的API和前端页面支持 2. 新增定时主动拉取MQTT和串口连接状态,修复初始加载无法获取状态的问题 3. 优化设备在线状态判定逻辑,改用设备地址判断 4. 新增调试用的脚本命令

4 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

  • e1c8ea1cae ✅ test: 添加 V4 批量读卡协议 (modbus_rtu) 的单元测试

4 gün önce

wenhongquan wenhongquan/dzxj_dtu zamanında main buraya push yaptı

  • 0655a0803b feat: 增强面板轮询机制,新增离线状态处理与地址重分配逻辑

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • ffb8cc2d1a feat(session): 实现房间恢复功能,增加会话服务以管理最后使用的房间

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • 9fc1b405c2 feat(session): room-based session resume via dispatcher - POST /connect accepts optional 'room' field for session resume - Flutter saves _currentRoom on connect, passes on resume - Same room → same Worker process → self.hist preserved - Persistent memory via voiceprint still works as fallback
  • e1a9225a6e feat(memory): two-tier memory - persistent voiceprint + session context - load_conversation_hist(): returns OpenAI-format messages for self.hist - On reconnection, persistent history restored as real conversation messages - Both system prompt context AND message-level history injected - self.hist capped at 20 turns
  • 2207bfa3fc fix(memory): use JSON file for conversation memory (Zvec can't do scalar-only query) - Replace Zvec conversation memory with JSON-backed dict - Thread-safe with _threading.Lock - Keyed by speaker_id, capped at 20 turns per speaker - Load/save on each conversation turn - Restore history on voiceprint re-identification
  • f7486333df feat(memory): speaker-aware conversation memory via Zvec - Save each conversation turn (query+reply) indexed by speaker_id - Load historical context on reconnection for the same speaker - Text embedding via char n-gram hash projection - Speaker context + memory injected as system messages - AI renamed to 狄诺尼试验员
  • d5d1c71fb5 feat(voiceprint): auto-register on first speech, hide speaker name from LLM output - Auto-register new speakers without explicit command - Speaker context injected as system message (not user message) - LLM instructed to personalize but NEVER mention speaker name
  • Bu 10 işlemeler için karşılaştırmaları görüntüle »

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • 81afb42fcc feat: 添加 ASR 项目架构总结文档

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • d41cc4dbbb chore: 更新应用名称为AI试验员 更新了APP的展示名称,包括MaterialApp标题、常量配置、安卓应用标签以及iOS的bundle显示名称和名称

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • d1afb91175 build(android): 配置安卓签名和混淆规则,更新默认连接地址 1. 新增安卓打包签名配置,支持debug和release签名 2. 添加proguard混淆规则文件并配置到构建选项 3. 将默认LiveKit连接地址从本地改为服务器公网地址
  • 29e3519f87 feat(dispatcher): multi-user room management service - POST /connect → returns unique room + token, spawns worker - Each app gets own isolated room (no cross-talk) - Workers auto-spawn per room, auto-cleanup on disconnect - roomCreate token allows app to create room instantly - No LiveKit server API dependency - Health check GET /health with active worker count
  • 0b3134495e fix(tts+asr): parallel TTS with ordered enqueue + filter single-char ASR filler - TTS: parallel tasks, enqueue in order to maintain sentence sequence - ASR: filter results that are only punctuation/filler words (嗯啊哦) - Simplify: _tts returns np.ndarray directly, no streaming
  • 34cb936a5e fix(tts): ordered TTS generation - collect segments first, generate sequentially Previously concurrent asyncio tasks could finish out of order, causing later segments to play before earlier ones. Now collects all segments, then generates TTS in sequence for correct order.
  • c80cfcdb22 fix(tts): keep audio int16, fix indentation
  • Bu 10 işlemeler için karşılaştırmaları görüntüle »

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • ca38fff29c fix(asr): concatenate streaming ASR chunks instead of keeping only last Streaming Mimo ASR returns text in fragments (e.g. '嗯' then '。'). Previous code overwrote with each chunk, keeping only final punctuation. Now correctly concatenates all chunks.
  • 18e3e4d341 fix(flutter): display streaming AI reply (liveReply) in conversation list - Added liveReply param to ConversationList widget - _LiveAiBubble widget shows streaming AI response with pulsing dots - Clear liveReply when final ReplyMessage arrives - Pass liveReply from recording_page to ConversationList
  • Bu 2 işlemeler için karşılaştırmaları görüntüle »

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • 1ba163922d feat(tts-asr): streaming Mimo TTS (voiceclone) + streaming ASR - ASR: mio-v2.5-asr streaming SSE, correct audio data URI format - TTS: mio-v2.5-tts / mio-v2.5-tts-voiceclone streaming - TTS voice clone: auto-detected when voice starts with 'data:' - TTS: 24kHz PCM16LE mono, chunked playback - MIMO_API_BASE unified across ASR/LLM/TTS - _play supports any sample rate
  • a381dc1067 feat(provider): add LLM/ASR provider switch (vllm/mimo, qwen/mimo) - LLM_PROVIDER env (vllm|mimo): switches LLM backend - ASR_PROVIDER env (qwen|mimo): switches ASR backend - Mimo LLM: streaming via mimo-v2.5 API (same format as vLLM) - Mimo ASR: mio-v2.5-asr via API (WAV base64 upload) - Existing vLLM + Qwen3 remain default, no breaking change
  • fbe9284c3e revert: remove partial ASR (CPU thrashing hurt latency) Partial ASR during speech ran multiple concurrent CPU-heavy transcriptions, caused thread contention and slowed everything down. Revert to single final ASR on VAD end. Keep MIN_SILENCE_S at 0.4s.
  • Bu 3 işlemeler için karşılaştırmaları görüntüle »

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • 3d398e2baf build(asr_agent): add onnxruntime dependency 为asr_agent服务添加onnxruntime运行时依赖包,用于支持相关语音识别功能
  • b3de0309a2 perf(asr): streaming partial ASR during speech + reduce VAD silence to 0.4s - Background _partial_asr loop transcribes new audio every 1s during speech - Partial results sent immediately via 'partial' messages - On speech end, full final transcription still runs for accuracy - VAD MIN_SILENCE_S reduced from 0.8s -> 0.4s (xiaozhi uses 200ms) - Partial task cancelled on speech restart (prevents stale transcription)
  • 6afa008037 feat(tts): concurrent TTS playback + user interruption (xiaozhi-style abort) - Each TTS segment plays immediately (background asyncio tasks) - No more waiting for all LLM output before playing audio - User speaking cancels any running TTS playback (interruption) - Replace cur_tts tracking with play_tasks list
  • 57e325ab76 feat(vad): bundle Silero VAD ONNX model (2.3MB) in asr_agent/ Default path now resolves to silero_vad.onnx alongside worker.py, falling back to VAD_MODEL_PATH env var. Previously required manual mount from /data/silero_vad/.
  • 5cec1bb5ae chore: add .gitignore
  • Bu 13 işlemeler için karşılaştırmaları görüntüle »

3 hafta önce

wenhongquan wenhongquan/dsh zamanında test buraya push yaptı

  • da0e2144f7 chore: 更新各配置文件为现场部署参数 更新RK3588模型路径、人体分析平台地址与接口路径、OSS配置信息, 调整测试相机组状态与正式相机组的现场IP配置

3 hafta önce

wenhongquan wenhongquan/dnnai zamanında livekit buraya push yaptı

  • cee917bf35 refactor(transcript-proc): 重构转录处理器,支持批量返回处理结果 重构了TranscriptProcessor的内部逻辑,将单次返回单条消息改为返回消息列表,适配流式转录的多消息场景,同时优化了重叠拼接和上下文管理流程。
  • 173eb24fc6 refactor: 重构语音识别转录处理逻辑,拆分前后端转录处理 1. 新增TranscriptProcessor类处理流式转录的去重、拼接和分段 2. 重构前后端消息类型,拆分partial和utterance消息 3. 移除前端本地的转录拼接逻辑,改为依赖后端处理结果 4. 新增finalize消息用于强制结束当前 utterance
  • 01b300300b feat(recording): add real-time speech-to-text display and finalize utterance logic 实现了实时语音转文字的预览效果,新增了根据静默时长自动提交完整对话内容的逻辑,优化了对话列表的展示结构,支持显示录音过程中的实时转录结果和录音状态动画。
  • 0b3247b701 chore: 移除websocket相关的调试打印日志 去掉了开发阶段用于调试的控制台打印输出,清理冗余调试代码
  • f05b0139b0 feat(macos+audio): 完善macOS端语音识别权限与音频传输逻辑 1. 为macOS编译配置添加麦克风权限相关的权限配置与描述文案 2. 重构音频捕获服务:改用直接读取音频缓冲区而非base64编码传输 3. 新增websocket二进制数据发送支持,替换原有的文本传输方式 4. 简化权限申请逻辑,移除依赖的permission_handler包 5. 添加实时音频音量监听功能

3 hafta önce