Built Product
Built
Prompt Optimization Platform
一个轻量级 Prompt 优化工具,把用户的原始提示词转成更清晰、更结构化、更适合模型理解的版本。
FastAPI
JavaScript
Supabase
DeepSeek API
Gemini API
Architecture Overview
Layer 01
Browser UI 收集原始提示词、目标场景和用户偏好。
Layer 02
API 服务生成规范化优化请求,并路由到不同模型供应商。
Layer 03
Supabase 管理用户身份、历史记录和基础权限控制。
Layer 04
模型适配层统一响应结构,避免前端感知供应商差异。
API Example
POST
/api/prompts/optimize
提交原始提示词和目标模型,后端返回结构化优化结果和调用元数据。
POST /api/prompts/optimize requestjson
{
"rawPrompt": "帮我写一个学习计划",
"targetModel": "deepseek",
"scenario": "backend-learning"
}response.jsonjson
{
"optimizedPrompt": "You are a backend learning coach...",
"sections": ["role", "task", "constraints", "output_format"],
"model": "deepseek",
"latencyMs": 1840
}Data Model
PromptHistory
- id
- userId
- rawPrompt
- optimizedPrompt
- model
- createdAt
Relations
belongs to user
ModelCall
- id
- historyId
- provider
- status
- latencyMs
- error
Relations
belongs to prompt history
PromptTemplate
- id
- name
- scenario
- structure
- enabled
Relations
can seed optimization requests
Deployment Notes
- Keep provider API keys on the server side.
- Normalize provider responses before returning data to the browser.
- Add per-user rate limits before exposing model calls to wider traffic.
- Log failed provider calls so slow or unstable prompts can be diagnosed.
Engineering Decisions
Start with a thin product surface
The first version keeps UI and API scope small so effort goes into model behavior, history, and response reliability.
Normalize model responses
The frontend receives one stable response shape even when DeepSeek and Gemini return different raw payloads.
Persist prompts for iteration
Prompt history turns a one-time tool into a product users can revisit, compare, and improve over time.
项目背景
很多用户知道自己想让 AI 完成什么,但提示词缺少角色、上下文、限制条件和输出格式。这个项目把提示词优化拆成输入理解、结构重写、模型调用和结果展示。
解决的问题
- 原始提示词经常缺少明确任务、上下文和输出约束。
- DeepSeek 与 Gemini 等模型返回结构不同,前端需要稳定展示。
- 工具型产品需要兼顾可用体验、认证和模型调用安全。
核心功能
- 用户输入原始提示词并选择优化方向。
- 通过 DeepSeek / Gemini API 生成结构化优化结果。
- 前端展示优化后的 Prompt、关键改动和可复制结果。
- 使用 Supabase 处理基础认证和数据存储。
技术架构
- FastAPI 提供提示词优化接口和模型适配层。
- JavaScript 前端负责输入、结果展示和基础交互。
- Supabase 负责用户认证、数据记录和权限策略。
- 模型 API 通过统一服务层封装,便于继续扩展供应商。
技术难点
- 不同模型返回格式不稳定,前端展示需要容错。
- 提示词优化结果需要兼顾通用性和可执行性。
- 认证、存储和模型调用链路需要保持足够简单。
我的解决方案
- 统一封装模型响应结构,失败时返回可解释错误。
- 把优化 Prompt 拆成目标、上下文、约束和输出格式四个部分。
- 先使用 Supabase 降低外围能力成本,把重点放在 AI 调用体验。
Evidence to Add
API documentation
Supabase schema notes
Model adapter error cases
Demo screenshots
Prompt history examples
下一步计划
- 增加 Prompt 模板库。
- 补充调用成本统计。
- 将核心接口迁移到 Java 后端版本。