不要怪大模型回答质量不行了,那是你不会问~
大模型开发/技术交流
- LLM
- Prompt
8月29日4083看过
早上好、中午好、晚上好
自AI大模型爆发到现在一年半有余了。作为软件行业的我们陆陆续续也用起来AI,譬如:
-
用于提高我们解决问题的能力
-
提高开发效率
-
提高代码质量
-
降低企业的开发成本
发现没?上面的AI优点其实是属于工程化范畴。
什么是工程化?
利用工具链解决前端在开发过程中提升效率和质量的问题,所有能降低成本,并且能提高效率的事情都属于工程化的范畴
所以软件工程化的两个点质量、效率。AI大模型都满足。所以现在我们可以利用AI来优化我们的软件研发的效率,那该怎么用呢?
选择一个好的大模型
选择一个好用的、回答质量高的大模型,好比是技术选型。相同的prompt喂给不同的大模型会吐出不同的答案,这些答案质量有高有低。
国外的大模型:
-
ChatGPT:这个不用说了,最全面最强大的大模型,3.5 < 4.0 < 4o。
-
LLaMA 2:LLaMA 2是Meta AI推出的一个开放源码的大语言模型,专注于高效和可扩展的自然语言处理任务。它有多个参数规模,涵盖了从7B到70B参数的模型,具有较好的性能和灵活性。
-
Claude:Claude是由Anthropic公司开发的大语言模型,以人类协作为核心设计理念,专注于安全性和可解释性。
-
Gemini:也是比较出名的,主要特点是有多模态的能力,具备处理文本数据的能力,还能够处理多模态输入,包括图像、视频、音频等
国内的大模型:
-
文心一言:百度推出的大模型,基于飞桨深度学习平台的生成式模型,专注于中文自然语言处理、知识图谱等应用场景。
-
通义千问:阿里巴巴研发的大模型。具有高效的中文理解和生成能力,同时支持多语言和多模态任务。
-
智谱清言:是北京智谱华章科技有限公司开发的大模型,我平常用得也比较多,回答的质量还是蛮高的。具有图片、代码、处理能力,还有图片生成和视频生成的能力,虽然不怎么样。
目前我较为推荐的还是
ChatGPT
,是我使用过相对来说比较好的大模型。
大模型选好了,现在就需要与之交互了
Prompt提示词
Prompt的定义
在人工智能领域,Prompt提示词是指用户输入给大语言模型(如GPT-4、文心一言等)的文本指令或问题,用以引导模型生成特定的响应或内容。Prompt是用户与生成式AI模型互动的核心方式,通过设计和优化Prompt,用户可以影响模型生成的输出内容的质量和方向。
怎么用?
在自然语言处理和聊天AI大模型应用中,prompt通常是一个问题或陈述,指引AI如何回应。例如:
-
问题Prompt:你问:“俄乌现在的局势怎么样了?” 如果AI可以联网的话,会根据这个prompt回答俄乌冲突的相关信息。
-
陈述Prompt:你说:“我今天上班的时候写了一个bug,被领导骂了,请安慰下我” AI根据这个prompt提供安慰或建议。
-
创作Prompt:你说:“写一个富家千金爱上穷小子的故事”。
-
有些大模型(Midjourney)支持文字转图片:你说:“设计一个农村现代别墅。”。
-
有些大模型(sora)支持文字转视频:你说:“一个富家千金牵着穷小子的手漫步在俄乌冲突的现场”。
-
编程领域:你问:“编写一个JavaScript函数来计算斐波那契数列。”
Prompt的重要性
Prompt提示词是与AI模型互动的核心,通过设计有效的Prompt,用户可以引导模型生成高质量、符合预期的内容。在生成式AI的应用中,掌握Prompt的设计技巧对于提高输出的相关性和实用性至关重要。
所以:“垃圾输入,垃圾输出”。
如何正确地向ChatGPT提问?
这是这篇文章的重点了
提问关键:
-
明确性:提供清晰、具体的Prompt可以帮助模型更准确地理解用户的意图,从而生成更符合需求的内容。
-
迭代优化:也就是要给出清晰的反馈。如果大模型的回答没有完全满足你的需求,可以尝试更换提问方式,或者指出哪里不对,这样AI可以更好地理解需求并提供更准确的答案。
-
内容优化:就是让它的回答更具体。你问:“今年中国经济怎么样?”。你可以针对上面的回答问:“请细化上面的回答”或者“让上面的回答更加数据化、结构化、专业化”。
-
上下文:在必要时提供足够的上下文信息,确保模型能够在正确的背景下生成内容。
说了这么多理论,有没有公式可以用?
向大模型提问的公式?
我觉得给大模型提问,就好比把一个商品卖出去。比如你去陌拜:你要告诉你是干嘛的,你的产品有什么功能,对你有什么帮助。一句话就是:说清楚你的动机。
说清楚的公式:
-
给角色:为AI赋予一个特定的角色身份,使其在回答问题时能够从该角色的角度出发。
-
请扮演一名医生,为患者提供健康建议。
-
请扮演一名律师,解释最新的法律法规。
-
请扮演一名心理咨询师,提供心理辅导。
-
-
说背景:提供充分的上下文背景信息,帮助AI更好地理解问题所在的情境。
-
患者有高血压病史,最近经常感到头晕。
-
新颁布的《个人信息保护法》引起了广泛关注。
-
求助者因工作压力大,出现焦虑和失眠症状。
-
-
定任务:明确告诉AI你希望实现的任务,使其能够针对性地提供答案。
-
请医生提供针对高血压患者的日常保健建议。
-
请律师解读《个人信息保护法》的主要内容。
-
请心理咨询师为焦虑和失眠患者提供自我调节方法。
-
-
补要求:说明回答是需要注意的事项或期望的回复形式。
-
在回答时,请医生提供具体的饮食和运动建议,并说明注意事项。
-
在解读法律时,请律师使用浅显易懂的语言,并提供实际案例。
-
在提供心理辅导时,请心理咨询师给出具体可行的技巧,并说明可能的效果。
-
举一个编程领域的例子:
比如你需要计算一个字符串中最长的符合
回文数
特征的字符串,返回其Length和对应的值。
按照上面的公式你可以这样问:
请扮演一名JavaScript开发者,编写一个名为
findPalindromeOrigin
的工具函数(给角色
)。该函数是处理一个全部由字母组成的字符串,目的是找出该字符串中符合回文数特性的字符串。回文数是指正读和反读都相同的字符串(说背景)。你的任务是确保这个函数能够接受一个字符串参数,检查该字符串是否全部由字母组成,并输出最长回文子串的长度和值,格式为 length: xxx, value: xxx
(定任务)。在编写函数时,请保证代码的可读性,并在找到多个长度相同的回文子串时,返回最左侧的那个。同时,请在代码中包含必要的注释,以帮助理解函数的工作原理(补要求)。
我们使用这个Prompt来问下ChatGPT:
我们看到他完全按照我们的需求去生成内容。
志哥我想说
其实各种类型的AI应用原理其实就是参数调整和优化提示词:
-
预训练(Pre-training) :GPTs 首先在大规模的数据集上进行预训练,学习语言的通用模式。这个阶段不针对任何特定领域。
-
微调(Fine-tuning) :针对特定领域,如翻译、美食评论或前端开发,GPTs 可以通过在领域特定的数据集上进行微调来进一步提升其性能。微调过程中会调整网络的参数,使其更适合特定任务。
-
提示词优化(Prompt Engineering) :提示词是给模型的问题或指令,它们极大地影响了模型的输出。通过精心设计提示词,可以引导模型生成更准确、更相关的回答。例如,对于翻译任务,提示词可能包括源语言和目标语言的指示;对于美食评论,提示词可能包含对菜肴的描述要求。
-
参数调整(Parameter Tuning) :在应用GPTs时,开发者可能会调整一些超参数,如学习率、批次大小、层数等,以优化模型的性能。
-
领域适配(Domain Adaptation) :为了使GPTs更好地适应特定领域,可能需要进行一些特定的适配工作,比如使用领域术语对模型进行进一步的训练。
以上仅仅抛砖引玉,如果你想成为一个Prompts工程师(提示词工程师)。这里分享几个学习Prompt的资源,速度mark:
-
官方出品的提示词课程:官方的,更加适合ChatGPT用户 www.deeplearning.ai/short-cours…
-
awesome-chatgpt-prompts:很强,star高达108k,甚至你不需要自己写相关领域的Prompt,因为你想要的上面都有了 github.com/f/awesome-c…
-
Learn Prompting:偏技术类的同学可以看下:learnprompting.org/zh-Hans/doc…
-
BestPrompts:直接搜索你想要的Prompt,直接copy拿来用 bestprompts.cn/#/index
————————————————
版权声明:本文为稀土掘金博主「_志哥_」的原创文章
原文链接:https://juejin.cn/post/7406147919575957504
如有侵权,请联系千帆社区进行删除
评论