GitHub - xflyhack/chat-service · GitHub
Skip to content

xflyhack/chat-service

Folders and files

Repository files navigation

chat-service

AI 对话编排服务,负责接收用户对话请求,调用知识库服务检索相关文档片段,并通过 Moonshot/Kimi 的 OpenAI-compatible 接口进行流式生成。

GitHub Description: Go AI chat orchestration service with SSE streaming, knowledge base retrieval, and Moonshot/Kimi LLM integration.

功能

  • POST /api/v1/chat/stream: SSE 流式对话输出。
  • 调用 knowledgebase-service 做检索增强,返回引用片段和页码。
  • 调用 Kimi/Moonshot 进行流式生成。
  • 支持 JWT 鉴权和网关统一转发。
  • 支持 Docker 构建,适合接入根目录 docker-compose.yml

配置

必须配置:

KIMI_API_KEY="YOUR_KEY"
JWT_SECRET="YOUR_JWT_SECRET"

常用可选配置:

CHAT_ADDR=":9102"
KB_BASE_URL="http://127.0.0.1:9103"
LLM_BASE_URL="https://api.moonshot.cn/v1"
LLM_MODEL="moonshot-v1-8k"

启动

export KIMI_API_KEY="YOUR_KEY"
export JWT_SECRET="YOUR_JWT_SECRET"

cp conf/env/example.toml conf/env/local.toml
go run ./cmd/chat-service -f conf/env/local.toml

默认监听 :9102

依赖服务

  • knowledgebase-service: 默认 http://127.0.0.1:9103
  • micro-api-gateway: 生产或联调时建议通过网关访问

测试

go test -cover ./internal/llm ./internal/prompt ./internal/client/kb ./internal/handler

在微服务编排中使用

该服务已适配根目录 docker-compose.yml。推荐通过上层编排统一启动:

cd ..
cp .env.example .env
./scripts/start.sh

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors