8.1 KiB
8.1 KiB
RAG知识库系统 - 免费服务使用指南
🎉 无需本地部署!使用免费云服务
本指南将帮助你使用免费的云服务替代本地Ollama和ChromaDB,让你无需安装任何AI模型即可使用RAG知识库功能。
📋 推荐的免费服务
1. 硅基流动 (SiliconFlow) ⭐ 推荐
优势:
- ✅ 完全免费(有免费额度)
- ✅ 支持中文嵌入模型
- ✅ 支持DeepSeek-V3等先进模型
- ✅ API兼容OpenAI格式
- ✅ 无需信用卡
注册地址: https://cloud.siliconflow.cn
免费额度:
- 每月免费Token额度
- 嵌入模型: BAAI/bge-large-zh-v1.5 (免费)
- 生成模型: DeepSeek-V3 (免费)
获取API Key步骤:
- 访问 https://cloud.siliconflow.cn
- 注册账号(支持微信/手机号)
- 进入控制台
- 点击"API密钥"
- 创建新的API密钥
- 复制密钥(格式:
sk-xxxxxx)
2. DeepSeek官方API
优势:
- ✅ 官方服务,稳定可靠
- ✅ 价格便宜(充值后使用)
- ✅ DeepSeek-V3模型
注册地址: https://platform.deepseek.com
价格:
- 输入: ¥1/百万tokens
- 输出: ¥2/百万tokens
3. 通义千问 (Qwen)
优势:
- ✅ 阿里云服务
- ✅ 有免费试用额度
- ✅ 国内访问速度快
注册地址: https://dashscope.aliyun.com
🚀 快速配置步骤
步骤1: 获取API Key
以硅基流动为例:
- 访问 https://cloud.siliconflow.cn
- 注册并登录
- 进入"API密钥"页面
- 点击"创建新密钥"
- 复制生成的密钥(类似:
sk-abcdefghijklmnopqrstuvwxyz123456)
步骤2: 配置application.yml
打开 ry-xinli-admin/src/main/resources/application.yml,找到RAG配置部分:
# RAG知识库配置
rag:
# 使用模式: openai(外部API) 或 ollama(本地)
mode: openai
# OpenAI兼容API配置(免费服务)
openai:
# 硅基流动API
base-url: https://api.siliconflow.cn/v1
# 替换为你的API Key
api-key: sk-your-api-key-here # ⚠️ 修改这里!
# 嵌入模型 (免费)
embed-model: BAAI/bge-large-zh-v1.5
# 生成模型 (免费)
generate-model: deepseek-ai/DeepSeek-V3
重要: 将 sk-your-api-key-here 替换为你的实际API Key!
步骤3: 启动应用
cd ry-xinli-admin
mvn spring-boot:run
步骤4: 测试连接
访问健康检查接口:
curl http://localhost:8080/psychology/rag-test/health
应该看到:
{
"code": 200,
"data": {
"ollama": "OK", // 实际使用的是OpenAI API
"chromadb": "OK", // 使用内存存储
"overall_status": "HEALTHY"
}
}
🎯 不同服务的配置示例
配置1: 硅基流动 (推荐)
rag:
mode: openai
openai:
base-url: https://api.siliconflow.cn/v1
api-key: sk-your-siliconflow-key
embed-model: BAAI/bge-large-zh-v1.5
generate-model: deepseek-ai/DeepSeek-V3
可用模型:
- 嵌入:
BAAI/bge-large-zh-v1.5,BAAI/bge-m3 - 生成:
deepseek-ai/DeepSeek-V3,Qwen/Qwen2.5-72B-Instruct
配置2: DeepSeek官方
rag:
mode: openai
openai:
base-url: https://api.deepseek.com/v1
api-key: sk-your-deepseek-key
embed-model: deepseek-chat # DeepSeek不提供专门的嵌入模型
generate-model: deepseek-chat
注意: DeepSeek官方API需要充值使用,但价格很便宜。
配置3: 通义千问
rag:
mode: openai
openai:
base-url: https://dashscope.aliyuncs.com/compatible-mode/v1
api-key: sk-your-dashscope-key
embed-model: text-embedding-v2
generate-model: qwen-plus
配置4: 混合模式(嵌入用免费,生成用本地)
如果你有本地Ollama,可以混合使用:
rag:
mode: openai # 主要使用OpenAI
openai:
base-url: https://api.siliconflow.cn/v1
api-key: sk-your-key
embed-model: BAAI/bge-large-zh-v1.5 # 用免费的嵌入
generate-model: deepseek-ai/DeepSeek-V3
ollama:
url: http://localhost:11434
generate-model: qwen2.5:7b # 本地生成(可选)
💡 使用建议
1. 选择合适的模型
嵌入模型(用于向量化):
BAAI/bge-large-zh-v1.5: 中文效果好,1024维 ⭐推荐BAAI/bge-m3: 多语言支持,1024维text-embedding-v2: 通义千问的嵌入模型
生成模型(用于生成报告):
deepseek-ai/DeepSeek-V3: 最新最强,推理能力强 ⭐推荐Qwen/Qwen2.5-72B-Instruct: 阿里千问,中文好Qwen/Qwen2.5-7B-Instruct: 更快,适合简单任务
2. 控制成本
虽然有免费额度,但还是要注意:
- 减少Top-K数量:
rag:
retrieval:
top-k: 3 # 从5减少到3,减少检索量
- 提高相似度阈值:
rag:
retrieval:
similarity-threshold: 0.75 # 从0.7提高到0.75,过滤更多结果
- 减小文本块大小:
rag:
text-splitter:
chunk-size: 500 # 从800减少到500
chunk-overlap: 100 # 从200减少到100
3. 监控使用量
大多数服务都提供使用量监控:
- 硅基流动: 控制台 → 用量统计
- DeepSeek: 控制台 → 账单
- 通义千问: 控制台 → 资源包
🧪 测试功能
测试1: 向量化
curl -X POST "http://localhost:8080/psychology/rag-test/test-embedding" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "text=这是一个测试"
预期输出:
{
"code": 200,
"data": {
"embedding_dimension": 1024,
"first_5_values": [0.123, -0.456, ...]
}
}
测试2: 文本生成
curl -X POST "http://localhost:8080/psychology/rag-test/test-generation" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "prompt=什么是心理学?"
测试3: 完整流程
# 1. 上传文档
curl -X POST "http://localhost:8080/psychology/knowledge/upload" \
-F "file=@test.txt" \
-F "category=心理学"
# 2. 智能问答
curl -X POST "http://localhost:8080/psychology/ai/chat" \
-H "Content-Type: application/json" \
-d '{"question":"什么是人格心理学?","context":""}'
❌ 常见问题
问题1: API Key无效
错误: 401 Unauthorized 或 Invalid API Key
解决:
- 检查API Key是否正确复制(包括
sk-前缀) - 确认API Key没有过期
- 检查是否有免费额度剩余
问题2: 模型不存在
错误: Model not found
解决:
- 检查模型名称是否正确
- 访问服务商文档查看可用模型列表
- 尝试使用推荐的模型名称
问题3: 请求超时
错误: Read timed out
解决:
- 检查网络连接
- 增加超时时间(在代码中已设置120秒)
- 尝试使用更小的模型
问题4: 免费额度用完
解决:
- 等待下月额度刷新
- 充值少量金额(通常很便宜)
- 切换到其他免费服务
📊 性能对比
| 服务 | 嵌入速度 | 生成速度 | 成本 | 稳定性 |
|---|---|---|---|---|
| 硅基流动 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 免费 | ⭐⭐⭐⭐ |
| DeepSeek | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 极低 | ⭐⭐⭐⭐⭐ |
| 通义千问 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 免费试用 | ⭐⭐⭐⭐⭐ |
| 本地Ollama | ⭐⭐⭐ | ⭐⭐ | 免费 | ⭐⭐⭐ |
🎯 推荐配置
开发测试环境
rag:
mode: openai
openai:
base-url: https://api.siliconflow.cn/v1
api-key: sk-your-key
embed-model: BAAI/bge-large-zh-v1.5
generate-model: Qwen/Qwen2.5-7B-Instruct # 更快
retrieval:
top-k: 3
similarity-threshold: 0.75
生产环境
rag:
mode: openai
openai:
base-url: https://api.deepseek.com/v1
api-key: sk-your-key
embed-model: deepseek-chat
generate-model: deepseek-chat
retrieval:
top-k: 5
similarity-threshold: 0.7
📞 获取帮助
- 硅基流动文档: https://docs.siliconflow.cn
- DeepSeek文档: https://platform.deepseek.com/docs
- 通义千问文档: https://help.aliyun.com/zh/dashscope
提示: 使用免费服务时,建议先小规模测试,确认效果后再大规模使用。大多数服务都提供充值选项,价格通常很便宜(几元到几十元即可使用很久)。