问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

OpenAI在RAG技术上的最佳实践与策略

创作时间:
作者:
@小白创作中心

OpenAI在RAG技术上的最佳实践与策略

引用
CSDN
1.
https://blog.csdn.net/xx_nm98/article/details/139707955

随着人工智能技术的不断演进,大型语言模型(LLM)的性能优化已成为AI领域的热点问题。OpenAI的技术专家团队分享了他们在检索增强生成(RAG)技术、提示工程和微调方面的最佳实践,为提升模型性能提供了宝贵的经验和策略。

微调技术的最新进展

John Allard深入介绍了OpenAI在微调领域的最新进展,包括:

  • 函数调用数据的微调:通过特定数据集的微调,优化模型对特定函数调用的理解。
  • 持续微调:提供了一种机制,允许模型随着时间的推移不断适应新数据。
  • 平台内全UI微调:通过用户界面的直接操作,简化了微调过程,提高了效率。

优化LLM性能的挑战

Colin细致讨论了优化大型语言模型的挑战,包括:

  • 信号与噪声的分离:在大量数据中识别有效信号,滤除干扰噪声。
  • 性能衡量的复杂性:确立合理的性能评估标准,确保模型优化方向的正确性。
  • 解决问题的策略选择:面对多种可能的解决方案,如何做出最合适的选择。

RAG技术的应用与案例分析

RAG技术通过结合Embeddings技术和向量数据库,显著提升了信息检索的效率和准确性。案例分析包括:

客户需求1:

  • 问题描述:基于大量文档的知识检索需求,要求模型仅从这些文档中检索信息。
  • 解决方案
    1. 直接将PDF和docx文件嵌入,准确率是45%。
    2. 经过20次调优迭代,解决细节小Bug - 准确率到65%
    3. 基于规则进行优化,譬如先判断问题属于什么领域(退一步思考),然后再回答,效果提升到85%
    4. 发现数据里有一些是结构化数据(如表格),为此定制提取解决,准确率提升到98%

总结:通过直接嵌入文件、迭代调优、规则优化和结构化数据的定制提取,逐步提升检索准确率。

客户需求2:

  • 问题描述:文本生成SQL的需求,即根据自然语言问题和数据库模式生成正确的SQL查询。
  • 解决方案
    1. 首先,我们用最简单的方法,比如余弦相似性,寻找类似问题的SQL查询,进行问题相似性搜索。我们测试了不同的嵌入和提示工程,但结果不太好。后来,我们意识到不同的数据库模式对问题的答案可能完全不同。
    2. 所以针对一个问题进行相似性搜索意义不大,但用预设答案进行搜索可能效果更好。我们使用预设的文档嵌入,生成一个假设的SQL查询进行相似性搜索,性能大大提升。对于这个特定问题,我们尝试了上下文检索通过简单过滤将问题按难度排名,只带回同等难度的例子,这带来了改进。
    3. 我们还尝试了一些先进技术,比如链式推理,让系统识别列、表,最后构建查询。但我们决定采用更简单的方法进行自我一致性检查,让系统构建查询并运行,出错时给出提示,再次尝试。

  • 我们从69%开始,然后添加了一些示例,得到了几个改进点,这表明RAG可以进一步改进。我们尝试这个问题,看到性能提升了3%,然后使用答案,假设的文档嵌入使我们进一步提升了5%。
  • 我们决定试试微调,看能否更进一步。先建立了我们的基线,与上图里的69%基线一样,使用简单的提示工程技术。然后,用简单的提示工程对GPT-4进行微调,结果模型准确率提升到接近82%。
  • 再稍微调整模型使用um rag技术,把一些示例动态注入上下文窗口,准确率达到83.5%。这些都很简单,没有复杂的数据预处理或后处理。结果显示简单的微调和提示工程也能接近最先进的技术。

总结:采用问题相似性搜索、预设答案搜索、上下文检索和链式推理等方法,有效提升查询生成的性能。

评估和优化RAG系统的方法

John和Colin评估和优化RAG系统的方法,强调了数据质量的重要性,提出了评估RAG系统的多个维度:

  • 模型测试分数:评估模型在特定任务上的表现。
  • 检索相关性:衡量检索到的内容与问题的相关程度。
  • 生成内容的准确性:评估生成答案的事实准确性。
  • 检索内容的信号与噪声比:评估检索到的信息的有用性。

实战指导参考流程

优化LLM性能并不总是线性的,有时需要结合使用提示工程、RAG和微调。当你想提高语言模型(LM)的性能时,可以参考如下顺序调优:

  1. 提示工程技术:作为开始的好地方,技术投资小,能够快速迭代,验证解决问题的可行性。
  2. RAG技术:私有化、数据安全考虑时使用,增加允许模型访问特定领域的内容,提升专业知识检索能力。
  3. 微调技术:还需进一步提升系统准确率,强化模型遵循一致指令的能力,提升特定领域的专业性使用。
  4. 预训练:成本最高,如果不是特殊要求一般不建议采用
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号