xinli/Archive/RAG-FREE-SERVICES-GUIDE.md
2026-01-30 16:23:31 +08:00

8.1 KiB
Raw Blame History

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步骤:

  1. 访问 https://cloud.siliconflow.cn
  2. 注册账号(支持微信/手机号)
  3. 进入控制台
  4. 点击"API密钥"
  5. 创建新的API密钥
  6. 复制密钥(格式: sk-xxxxxx

2. DeepSeek官方API

优势:

  • 官方服务,稳定可靠
  • 价格便宜(充值后使用)
  • DeepSeek-V3模型

注册地址: https://platform.deepseek.com

价格:

  • 输入: ¥1/百万tokens
  • 输出: ¥2/百万tokens

3. 通义千问 (Qwen)

优势:

  • 阿里云服务
  • 有免费试用额度
  • 国内访问速度快

注册地址: https://dashscope.aliyun.com

🚀 快速配置步骤

步骤1: 获取API Key

以硅基流动为例:

  1. 访问 https://cloud.siliconflow.cn
  2. 注册并登录
  3. 进入"API密钥"页面
  4. 点击"创建新密钥"
  5. 复制生成的密钥(类似: 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. 控制成本

虽然有免费额度,但还是要注意:

  1. 减少Top-K数量:
rag:
  retrieval:
    top-k: 3  # 从5减少到3减少检索量
  1. 提高相似度阈值:
rag:
  retrieval:
    similarity-threshold: 0.75  # 从0.7提高到0.75,过滤更多结果
  1. 减小文本块大小:
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 UnauthorizedInvalid API Key

解决:

  1. 检查API Key是否正确复制包括sk-前缀)
  2. 确认API Key没有过期
  3. 检查是否有免费额度剩余

问题2: 模型不存在

错误: Model not found

解决:

  1. 检查模型名称是否正确
  2. 访问服务商文档查看可用模型列表
  3. 尝试使用推荐的模型名称

问题3: 请求超时

错误: Read timed out

解决:

  1. 检查网络连接
  2. 增加超时时间在代码中已设置120秒
  3. 尝试使用更小的模型

问题4: 免费额度用完

解决:

  1. 等待下月额度刷新
  2. 充值少量金额(通常很便宜)
  3. 切换到其他免费服务

📊 性能对比

服务 嵌入速度 生成速度 成本 稳定性
硅基流动 免费
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

📞 获取帮助


提示: 使用免费服务时,建议先小规模测试,确认效果后再大规模使用。大多数服务都提供充值选项,价格通常很便宜(几元到几十元即可使用很久)。