Files
smartmate/backend/config.example.yaml
Losita 04b5836b39 Version: 0.9.42.dev.260424
后端:
1. 新增课表图片识别接口,支持上传截图后返回“可编辑草稿”(success / partial / reject),并补齐大图、空图、格式不支持、识别能力未配置等错误分支。
2. 课表识别服务接入多模态 Responses 链路,完善图片请求归一化与安全校验(大小、MIME、内容探测),并对识别结果做结构化清洗、强/弱约束校验、告警去重与默认文案兜底。
3. 新增 Ark Responses 统一客户端抽象,支持文本+图片输入、JSON对象输出、usage统计透传与不完整输出识别;同时补齐模型返回 finish_reason 透传,便于定位截断问题。
4. 启动阶段增加课表识图模型与参数注入(模型名、最大图片字节、最大输出token),并将配置示例收敛为“仅保留当前代码实际读取项”。

前端:
5. 课表中心新增“导入课表”完整闭环:上传图片识别、草稿编辑校对、正式导入落库;并新增对应 API 与类型定义。
6. 导入弹窗支持识别中止、全局告警与行级告警展示、低置信度提示、行内编辑、手动新增、删除、拖拽排序、本地校验与提交前二次确认。
7. 正式导入前将草稿按“课程名+地点+是否允许嵌入”聚合为导入结构,并统一携带幂等键请求头,降低重复提交风险。
8. 周课表画板修复跨节次事件遮挡导致的网格错位问题,改进“完全遮挡/部分遮挡”渲染判定与 grid 行定位。
9. 助手流式区域优化“思考中”指示逻辑与样式,避免已有正文时仍展示回答中占位;同时补充全局组件视觉统一(弹窗/按钮)样式。

仓库:
10. 新增课表图片识别前端对接说明文档,补充主动优化能力 PRD 讨论稿,并在协作规范中新增“实现 Eino 新能力前需先查官方文档”的约束。
2026-04-24 23:33:43 +08:00

134 lines
2.6 KiB
YAML

# SmartFlow 后端配置示例
#
# 说明:
# 1. 请复制为 config.yaml 后按实际环境填写。
# 2. 本示例只保留当前代码仍会读取的配置项,避免示例与运行配置持续漂移。
# 服务启动配置。
server:
port: 8080
# MySQL 主库配置。
database:
host: localhost
port: 3306
user: smartflow_user
password: "put_your_database_password_here"
dbname: "put_your_database_name_here"
# 登录态与鉴权令牌配置。
jwt:
accessSecret: "put_your_jwt_access_secret_here"
refreshSecret: "put_your_jwt_refresh_secret_here"
accessTokenExpire: 15min
refreshTokenExpire: 7d
# Redis 配置。
redis:
host: localhost
port: 6379
password: ""
# Kafka outbox 事件总线配置。
kafka:
enabled: true
brokers:
- "localhost:9092"
topic: "smartflow.agent.outbox"
groupID: "smartflow-agent-outbox-consumer"
retryScanInterval: 1s
retryBatchSize: 100
maxRetry: 20
# 时间与学期边界配置。
time:
zone: "Asia/Shanghai"
semesterStartDate: "2026-03-02"
semesterEndDate: "2026-07-19"
# 智能体模型配置。
agent:
liteModel: "doubao-seed-2-0-code-preview-260215"
proModel: "doubao-seed-2-0-code-preview-260215"
maxModel: "doubao-seed-2-0-code-preview-260215"
baseURL: "https://ark.cn-beijing.volces.com/api/v3"
thinking:
plan: true
execute: true
deliver: false
memory: false
# 课表图片导入识别配置。
courseImport:
visionModel: ""
maxImageBytes: 5242880
maxTokens: 8192
# 通用 RAG 配置。
rag:
enabled: true
store: "milvus"
topK: 8
threshold: 0.55
retrieve:
timeoutMs: 1500
ingest:
chunkSize: 400
chunkOverlap: 80
embed:
provider: "eino"
model: "doubao-embedding-vision-251215"
baseURL: "https://ark.cn-beijing.volces.com/api/v3"
timeoutMs: 1200
dimension: 1024
reranker:
enabled: false
provider: "noop"
timeoutMs: 1200
milvus:
address: "http://localhost:19530"
token: "root:Milvus"
dbName: ""
collectionName: "smartflow_rag_chunks"
metricType: "COSINE"
requestTimeoutMs: 1500
# 记忆模块配置。
memory:
enabled: true
rag:
enabled: true
read:
mode: legacy
constraintLimit: 5
preferenceLimit: 5
factLimit: 5
inject:
renderMode: flat
prompt:
extract: ""
decision: ""
threshold: 0.55
enableReranker: false
llm:
temperature: 0.1
topP: 0.2
job:
maxRetry: 6
worker:
pollEvery: 2s
claimBatch: 1
decision:
enabled: true
candidateTopK: 5
candidateMinScore: 0.6
fallbackMode: legacy_add
write:
mode: legacy
minConfidence: 0.5
# 联网搜索能力配置。
websearch:
provider: bocha
apiKey: ""