当前位置: 首页 > article >正文

一次调整prompt的过程

文章目录

  • 背景
  • 第一阶段
  • 第二阶段
  • 第三阶段
  • 总结
    • 第一阶段:内容翻译尝试
    • 第二阶段:问题翻译与英文索引
    • 第三阶段:格式优化与QA样例示例
    • 结论

背景

最近在弄一个国外的开源库,它提供了全英文的api文档,因为我是负责这块以及我英文阅读还行。所以我自己读起来是没有任何困难的,但是我这个负责的模块要给其它模块来进行调用,所以就导致了其它开发人员的阅读困难,因为他们不了解,所以需要不断找我,我就使用RAG将api文档作为语料来使LLM能够对QA进行回答。

第一阶段

在这个阶段,考虑了直接将英文翻译成中文,但是文件过大,所以并不能使用gpt来进行翻译,只能通过翻译软件来进行翻译,这样就导致了一个问题,http请求参数以及响应中的字段也会被翻译,作为语料效果不好,遂放弃。

第二阶段

既然api文档大,原始的内容不好翻译,那就在prompt中写上要求gpt将中文问题翻译成英文问题,再在知识库中进行索引,这样就解决了中文问题在api文档中搜索不到相关知识。
但是又出现了虽然现在能搜索到相关知识点了,但是返回输出的依然是英文,这样也不方便,所以就要求gpt将返回的内容除了请求和响应这两部分之外的内容翻译成中文,这样就达到了中文问,中文回答的效果了。

第三阶段

用的过程中发现返回的信息由于gpt不知道该将那些翻译那些不翻译,所以就会产生格式问题,还得开发人员来进一步处理,比较麻烦,所以手工造了一个QA样例告诉gpt什么样是对的,什么样是错的。这样它就知道如何处理QA了。

总结

以下是每个阶段的改进措施及其作用总结:

第一阶段:内容翻译尝试

改进措施:最初尝试将英文API文档整体翻译成中文,以便所有开发人员能直接读取中文内容。
问题:由于文档体积过大,无法使用GPT直接翻译;通过翻译软件翻译会导致API请求和响应字段也被翻译,从而影响了技术术语和参数的准确性。
作用:这一阶段主要探索了全中文内容的可行性,但验证了保持API关键字段不变的必要性,因此最终放弃。

第二阶段:问题翻译与英文索引

改进措施:将中文问题翻译成英文,以便在知识库中进行英文检索;检索后,要求GPT将回答内容中的请求和响应部分保持英文,其余内容翻译成中文。
问题:虽然这种方法解决了中文提问和知识检索的问题,但输出的格式仍然不理想,GPT在翻译过程中对哪些部分需要保持英文并不清晰,造成了格式不统一。
作用:该阶段实现了中文提问、中文回答的基本效果,减少了开发人员阅读英文内容的障碍,但翻译一致性问题仍需优化。

第三阶段:格式优化与QA样例示例

改进措施:创建手工QA样例,提供正确和错误示例,以明确示范哪部分应保持英文,哪部分需翻译成中文。这样GPT可以依样例调整回答格式,保持一致性。
问题:格式问题在有示例后得到解决;但需要前期花费一些时间制作符合需求的样例。
作用:这一阶段通过QA示例标准化了回答的格式,确保了输出中技术字段的准确性和回答的易读性。开发人员无需额外格式调整,显著提升了沟通效率。

结论

每个阶段的改进最终解决了中文问答的流畅性和技术内容的准确性问题:

  1. 第一阶段明确了全翻译的弊端;
  2. 第二阶段实现了中文提问、部分翻译的初步效果;
  3. 第三阶段通过QA示例统一了输出格式,减少了后续人工调整,提高了使用体验和效率。

http://www.kler.cn/news/368724.html

相关文章:

  • Kaggle竞赛——灾难推文分类(Disaster Tweets)
  • Maven 介绍与核心概念解析
  • MySql数据库中数据类型
  • 【rabbitmq】rabbitmq工作模式
  • vue3+vite 部署npm 包
  • python 结构作业
  • docker常用命令整理
  • RabbitMQ几个核心概念
  • 通过页面添加国际化数据,实现vue的国际化
  • J2学习打卡
  • 分账系统适用于那些商家?
  • Spring Boot植物健康系统:绿色科技的创新
  • TensorFlow面试整理-TensorFlow 和 PyTorch 的区别是什么?
  • 论文阅读(二十五):PVTv2: Improved Baselines with Pyramid Vision Transformer
  • SASS转换成CSS步骤
  • 宝塔如何部署Django项目(前后端分离篇)
  • Three.js 使用着色器 实现跳动的心
  • WebView渲染异常导致闪退解决方案
  • 若依学习 后端传过来的数据在控制台打印为空
  • iPhone当U盘使用的方法 - iTunes共享文件夹无法复制到电脑怎么办 - 如何100%写入读出
  • 解决pycharm无法添加conda环境的问题【Conda Environment下没有Existing environment】
  • 机器学习在智能水泥基复合材料中的应用与实践
  • 部署 Traefik 实现 dashboard 与 原生Ingress使用 CRD IngressRoute使用
  • 大语言模型参数传递、model 构建与tokenizer构建(基于llama3模型)
  • 关于洛谷中XJS-SINGA科技站点 系统讨论团队的一些介绍
  • 【网络】:网络基础