refactor(prompt): 重构提示词构建服务与数据模型

This commit is contained in:
2026-05-20 11:36:39 +08:00
parent c49144794d
commit 35bc3bd6ec
24 changed files with 1682 additions and 759 deletions

View File

@@ -1,30 +1,54 @@
# prompts-core提示词服务[2026.5.12前,暂时弃置]
# Prompts-Core 提示词核心服务
## 项目简介
Prompts-Core 是基于 Go 语言开发的**多模态 AI 提示词构建与管理系统**,专注于统一管理各类 AI 模型的提示词模板、维护智能会话上下文、适配主流模型协议,并支持文件解析与外部技能集成,为 AI 应用提供标准化、高效的提示词服务。
## 1. 功能范围(当前阶段)
- 仅做提示词配置的基础 CRUD最小可用版本
- 表:`prompts_model_prompt`
## 核心功能
1. **提示词构建引擎**
支持文字/图片/音频/向量化/全模态 5 类任务提示词生成,提供完整流程、分步节点两种构建模式,支持超大内容按 Token 自动分批处理。
2. **智能会话管理**
基于缓存实现高效会话存储,自动控制会话轮数与过期时间,保障上下文连贯性。
3. **多模型协议适配**
动态适配 OpenAI、DeepSeek、Qwen、Gemini 等主流 AI 模型协议,支持角色、字段、消息顺序灵活映射。
4. **文件与技能集成**
自动提取文本、ZIP 压缩包内容,支持加载外部 Markdown 技能配置,扩展服务能力。
5. **异步任务调度**
支持异步任务处理、状态轮询与回调通知,自带可配置重试机制。
## 2. 接口
> 路由注册方式与参考项目一致:使用 `common/http.RouteRegister` 注册 controller。
## 技术架构
- 开发语言Go 1.26.0
- Web 框架GoFrame v2.10.0
- 核心存储Redis会话缓存
- 服务组件Consul服务注册、Jaeger链路追踪
- 调用链路:客户端 → Prompts-Core → 模型网关 → AI 模型
- `POST /composeMessages`:按 `modelTypeId` 读取 `prompt_info + response_json_schema``modelName` 作为实际调用的网关模型;结合前端 `form(role/value)``userfiles` 调用 `model-gateway /task/createTask`,同步等待回调后直接返回最终 `messages`
- `GET /composeMessagesCallback/prompts-core``model-gateway` 成功回调接口(真实地址由 `callbackUrl + /bizName` 组成)
- `GET /getComposeTask`:按 `taskId` 查询拼接任务状态和结果
- `POST /createPrompt`:创建(默认启用)
- `PUT /updatePrompt`:更新
- `DELETE /deletePrompt`:删除
- `GET /getPrompt`:详情
- `POST /listPrompt`:列表分页
## 快速开始
### 环境要求
Go 1.26+、Redis、已部署模型网关服务
## 3. 数据库初始化
执行根目录 `update.sql`
### 启动步骤
1. 克隆项目代码
2. 完成项目配置文件修改
3. 执行命令启动服务:
```bash
go run main.go
```
## 4. 运行配置
配置文件:`config.yml`
## API 接口
### 基础信息
- 服务地址:`http://{host}:3009`
- 请求类型:`application/json`
- 认证方式:请求头携带 `Authorization``X-User`
### 新增说明
- `prompts_model_prompt` 去除了 `limit_length`
- 新增 `response_json_schema`
- 新增任务记录表 `prompts_compose_task`
- `callbackUrl` 必须填写 prompts-core 的绝对地址基路径,例如:`http://127.0.0.1:8002/composeMessagesCallback`
- `model-gateway` 实际回调地址`callbackUrl/{bizName}`,本项目固定为:`/composeMessagesCallback/prompts-core`
### 核心接口
1. **提示词拼接接口**
- 地址:`POST /composeMessages`
- 功能:构建提示词并调用模型服务,同步返回结果
2. **任务状态查询**
- 地址:`GET /getComposeTask`
- 功能:根据任务 ID 查询处理状态与结果
3. **任务回调接口**
- 地址:`GET /composeMessagesCallback/prompts-core`
- 功能:接收模型服务处理完成回调
4. **会话同步接口**
- 地址:`POST /sessionCallback`
- 功能:同步更新会话上下文历史