大模型应用实战技巧:大模型说‘抱歉,我无法完成您的要求‘怎么办 - 你真的了解你给大模型的Prompt吗

简介: 大模型应用实战技巧:大模型说‘抱歉,我无法完成您的要求‘怎么办 - 你真的了解你给大模型的Prompt吗

0. 背景

不知道大家在使用 OpenAI API 的过程中有没有遇到过类似的问题:同一个Prompt,在ChatGPT界面中使用,返回的结果非常好,但是将Prompt放到API中调用,经常会返回“抱歉,我无法满足您的要求”,或一些不符合预期的结果。

如下面的例子:

使用ChatGPT界面,返回了预期的结果。

而使用 OpenAI API,返回的却是:“抱歉,我无法完成您的要求”

1. 问题原因及解决办法

1.1 原因1

通过API方式的调用,Prompt实际上是一个字符串,这与直接使用界面不同,你不知道ChatGPT界面背后是怎么处理这个字符串的。

1.1.1 原因解析

来看看API方式调用时,代码中Prompt的样子:

Prompt模板代码:

prompt = f"""
            你需要根据给定的任务思考出一系列Tasks,以此来保证能够一步一步地实现该任务的目标。任务为: {self.objective}.
            """
        prompt += """
        Return one task per line in your response. The result must be a numbered list in the format:
        #. First task
        #. Second task
        The number of each entry must be followed by a period. If your list is empty, write "There are no tasks to add at this time."
        Unless your list is empty, do not include any headers before your numbered list or follow your numbered list with any other output. 
        OUTPUT IN CHINESE
        """

它产生的实际Prompt字符串:

'\n            你需要根据给定的任务思考出一系列Tasks,以此来保证能够一步一步地实现该任务的目标。任务为: 历史上的今天发生了什么?.\n            \n        Return one task per line in your response. The result must be a numbered list in the format:\n\n        #. First task\n        #. Second task\n\n        The number of each entry must be followed by a period. If your list is empty, write "There are no tasks to add at this time."\n        Unless your list is empty, do not include any headers before your numbered list or follow your numbered list with any other output. \n        OUTPUT IN CHINESE\n        '

可以看到,产生的Prompt中带入了大量的空格、换行符等特殊字符。以我的测试来看,这些是导致大模型无法正确输出内容的直接原因。

1.1.2 解决方案

在给大模型输入Prompt前,对这个字符串进行处理,去除里面的大量空格,换行符可以保留。

处理代码:

prompt = prompt.replace('  ', '')  

注意,replace函数的第一个参数' '中是两个空格,如果是一个空格,会将英文单词之前的空格也删掉,导致如下的情况:

正确处理后的Prompt应该类似:

这样应该就能让大模型正确返回结果,不再是“抱歉”:

1.2 原因2

除了以上Prompt中可能存在大量干扰性的空格之外,还有个可能的原因是你使用的框架中可能隐藏了隐式的Prompt。

以我使用的MetaGPT为例,它在询问大模型时,除了我这个Prompt,其实还有自己隐式的Prompt,如下图,它每次调用大模型API时,会自动加一个system的Prompt,如果这个Prompt对你的问题有干扰,那也会大模型无法给出正确答案,所以这个system prompt的设置,也需要格外注意。

相关文章
|
2月前
|
存储 人工智能 前端开发
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。
183 2
|
2月前
|
前端开发 机器人 API
前端大模型入门(一):用 js+langchain 构建基于 LLM 的应用
本文介绍了大语言模型(LLM)的HTTP API流式调用机制及其在前端的实现方法。通过流式调用,服务器可以逐步发送生成的文本内容,前端则实时处理并展示这些数据块,从而提升用户体验和实时性。文章详细讲解了如何使用`fetch`发起流式请求、处理响应流数据、逐步更新界面、处理中断和错误,以及优化用户交互。流式调用特别适用于聊天机器人、搜索建议等应用场景,能够显著减少用户的等待时间,增强交互性。
566 2
|
1月前
|
人工智能 JSON API
阿里云文档智能 & RAG解决方案:提升AI大模型业务理解与应用
阿里云推出的文档智能 & RAG解决方案,旨在通过先进的文档解析技术和检索增强生成(RAG)方法,显著提升人工智能大模型在业务场景中的应用效果。该方案通过文档智能(Document Mind)技术将非结构化文档内容转换为结构化数据,提取文档的层级树、样式和版面信息,并输出为Markdown和Json格式,为RAG提供语义分块策略。这一过程不仅解决了文档内容解析错误和切块丢失语义信息的问题,还优化了输出LLM友好的Markdown信息。方案的优势在于其多格式支持能力,能够处理包括Office文档、PDF、Html、图片在内的主流文件类型,返回文档的样式、版面信息和层级树结构。
125 2
|
2月前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
90 2
|
2月前
|
弹性计算 自然语言处理 安全
国内基础大模型的独立性及应用大模型的依赖性
本文探讨了国内基础大模型(如阿里巴巴的通义千问)的独立性及其应用大模型的依赖性。详细分析了这些模型的研发过程、应用场景及技术挑战,包括数据收集、模型架构设计和算力支持等方面。同时,讨论了微调模型、插件式设计和独立部署等不同实现方式对应用大模型的影响。
46 0
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
当前AI大模型在软件开发中的创新应用与挑战
【10月更文挑战第31天】2024年,AI大模型在软件开发领域的应用取得了显著进展,从自动化代码生成、智能代码审查到智能化测试,极大地提升了开发效率和代码质量。然而,技术挑战、伦理与安全问题以及模型可解释性仍是亟待解决的关键问题。开发者需不断学习和适应,以充分利用AI的优势。
|
1月前
|
人工智能 自然语言处理 算法
政务培训|LLM大模型在政府/公共卫生系统的应用
本课程是TsingtaoAI公司面向某卫生统计部门的政府职员设计的大模型技术应用课程,旨在系统讲解大语言模型(LLM)的前沿应用及其在政府业务中的实践落地。课程涵盖从LLM基础知识到智能化办公、数据处理、报告生成、智能问答系统构建等多个模块,全面解析大模型在卫生统计数据分析、报告撰写和决策支持等环节中的赋能价值。
65 2
|
2月前
|
机器学习/深度学习 数据采集 自然语言处理
【机器学习】大模型驱动下的医疗诊断应用
摘要: 随着科技的不断发展,机器学习在医疗领域的应用日益广泛。特别是在大模型的驱动下,机器学习为医疗诊断带来了革命性的变化。本文详细探讨了机器学习在医疗诊断中的应用,包括疾病预测、图像识别、基因分析等方面,并结合实际案例进行分析。同时,还展示了部分相关的代码示例,以更好地理解其工作原理。
94 3
【机器学习】大模型驱动下的医疗诊断应用
|
1月前
|
人工智能 分布式计算 数据可视化
大模型私有化部署全攻略:硬件需求、数据隐私、可解释性与维护成本挑战及解决方案详解,附示例代码助你轻松实现企业内部AI应用
【10月更文挑战第23天】随着人工智能技术的发展,企业越来越关注大模型的私有化部署。本文详细探讨了硬件资源需求、数据隐私保护、模型可解释性、模型更新和维护等方面的挑战及解决方案,并提供了示例代码,帮助企业高效、安全地实现大模型的内部部署。
121 1
|
1月前
|
人工智能 分布式计算 数据可视化
大模型私有化部署全攻略:硬件需求、数据隐私、可解释性与维护成本挑战及解决方案详解,附示例代码助你轻松实现企业内部AI应用
【10月更文挑战第23天】随着人工智能技术的发展,大模型在各领域的应用日益广泛。然而,将其私有化部署到企业内部面临诸多挑战,如硬件资源需求高、数据隐私保护、模型可解释性差、更新维护成本高等。本文探讨了这些挑战,并提出了优化硬件配置、数据加密、可视化工具、自动化更新机制等解决方案,帮助企业顺利实现大模型的私有化部署。
109 1
下一篇
DataWorks