chatGPT这么火,这几天一番体验之后,除了惊叹,同时也引发了作为程序员的担忧:我的工作是否会被AI取代?
这个问题很难不引起焦虑,但是我们可以换一个角度,可以用这些生成类的工作,做些什么提高我们的工(zao)作(dian)效(xia)率(ban)?就像我们当初使用搜索引擎一样。
什么是AIGC?
AIGC全称为AI-Generated Content,指基于生成对抗网络GAN、大型预训练模型等人工智能技术,通过已有数 据寻找规律,并通过适当的泛化能力生成相关内容的技术。与之相类似的概念还包括Synthetic media,合成式媒 体,主要指基于AI生成的文字、图像、音频等。来源:AIGC万字百科全书:底层原理、应用场景、工具示例、行业现状、发展趋势
ChatGPT可以做什么
ChatGPT到底是取代程序员,还是提升程序员效率的工具?这里以chatGPT为例,提供一些提(tou)高(lan)办公效率的案例(以ChatGPT为例):
做PPT
这个需要结合外部网站,例如https://mindshow.fun/、闪击PPT - 高效内容演示等,这里以支持markdown的minshow为例:
- 首先让chatGPT写出内容
2. 将markdown代码复制到mindshow中。
3. 选择一个模版:
大功告成。
信息汇总
例如文档的总结、新闻总结:爬虫爬取一些相关新闻,然后输入chatgpt,让他汇总生成摘要。例如:
代码
代码解释
当你加了一天班,脑袋宕机后,可以让他帮你读代码
写代码
如果脑袋宕机更严重一点,可以让他你写代码。目前体验下来很多语言都支持,连sql都写的还不错。
以后面试是不是直接可以使用chatGPT作为面试题外援了。。。
帮你修bug
代码翻译
代码提示
GitHub Copilot, 自动补全代码,vs code也有插件,基于OpenAI Codex 模型,比如你只需要给函数命名,加一点注释,他就能够补全实现代码:
详细使用见:https://docs.github.com/zh/copilot/getting-started-with-github-copilot
特定机器学习NLP任务
对于nlp任务,涉及好的prompt至关重要,这里也就只有多试试,实验获得较优的prompt。(好家伙,从炼丹变成了prompt调优)
- 使用chatGPT测试情感分类的例子
- 观点总结的例子
3. 主题分类的例子
写文章
包括博客论文之类的,哈哈,毕业论文神器,怪不得高校都禁止。这里放一个写博客的例子
写完大纲不行,能不能直接写个博客:
问答产品
一些简单的问题,不需要知识库的,可以直接提问:
但是对于有更新知识,或者特定工具的文档,就不太行了,因为chatgpt的语料是固定的,为了能将知识加入,不可能每次都讲所有知识作为prompt输入,有没有一个解决方式能缩小问题的范围,将相关资料汇总、裁剪后作为gpt的prompt输入。
解决问题:如何利用知识库,集合GPT能力进行回答。
方案:利用检索缩小问题的范围,将相关资料汇总、裁剪后,然后作为gpt的prompt输入。
- 利用openAI Embedding将知识库的文档向量化,
- 输入用户问题向量召回topk相关段落,或者答案片段。
- 让 chatGPT 总结,作为问题的prompt。(其实就是利用gpt总结topk答案成流畅的回答)
参考代码库:https://github.com/GanymedeNil/document.ai
也有一些其他开箱即用的,例如Chat2Doc、ChatPDF
例如我使用Chat2Doc,上传了一篇论文:Towards Boosting the Open-Domain Chatbot with Human ...,下面是它的回答:
广告创意、广告文案的生产
加上前面ppt网站的模板,直接就是文案图片了。
办公
做ppt前面讲过,那么excel和doc呢?
ChatExcel,仅仅通过命令就可以修改excel(老罗类目)。
ChatDOC,和上面介绍的类似,上传你的文档,就可以直接提问了。类似前面提到的Chat2Doc、ChatPDF
prompt
prompt很重要,想要获得好的效果,还需要很好地设计prompt,而且要多试试不同的prompt效果,实验出来。
对于问答,提问最好清晰具体,内容要解释清楚,另外可以指定让他担任的角色,以及结果形式,也可以加入一些限制,详细可以参考这篇博客。
- 提问的例子:
另一种是针对某些特定的任务,比如分类任务,可以设置一些提示语、类别标签、类别标签的解释加入到prompt中,会让他更好的。例如下面的一些例子:
场景 | Prompt |
---|---|
提问场景 | prompt描述问题清晰具体即可,另外可以指定让他担任的角色,以及结果形式,如:以一个骑行者视角用流畅的中文说说,四川有哪些有名的景点? |
观点生成 | 请用流畅的中文根据下面用户评论,总结用户对{game_name}关于 {topic1} 话题的观点: |
话题标签 | 您现在正在执行一个主题分类任务。对于提供的句子,您需要确定该句子是否关于<topic_name>这里有一些规则:{规则和例子} |
总结 | 请用中文简单总结下以下内容{} |
情感分类 | 你正在进行情感分类的任务,请判断{内容}属于正面、中性还是负面,为它打上标签。{情感定义} |
怎么体验到AIGC
ChatGPT
chatGPT&GPT4官网:https://chat.openai.com/auth/login?next=/chat,chatGPT是免费的(需要一个国外手机号注册就行,可以TB买),ChatGPT Plus订阅收费制,每月20刀,据说也有gpt4访问权限。GPT4支持图文的多模态输入,
48 个基本能力:https://platform.openai.com/examples
官方技术报告地址:https://cdn.openai.com/papers/gpt-4.pdf
官方视频案例地址:https://www.youtube.com/live/outcGtbnMuQ?feature=share
ChatGLM-6B
chatGLM是清华开源的中英对话语言模型,开源了60亿参数的模型👍🏻:ChatGLM-6B,更多介绍见博客:https://chatglm.cn/blog
功能包含:自我认知,提纲写作,文案写作,邮件写作助手,信息抽取,角色扮演,评论比较,旅游向导。这里是一些例子,ChatGLM-6B 示例
文心一言
文心一言是百度知识增强大语言模型,功能包括:与人对话互动,回答问题,协助创作。在官网申请加入体验即可,据说支持多模态生成,目前还没体验过,不予置评。不过最近百度比较经典的 驴肉火烧、老婆饼有老婆之类的大家应该听过[doge]。。。
yuanyu
ChatYuan-large-v2是一个支持中英双语的功能型对话语言大模型。
git: https://github.com/clue-ai/ChatYuan
介绍博客:ChatGPT国产化:ChatYuan元语对话大模型升级
Luotuo: Chinese-alpaca-lora
中文的模型,在 Meta 开源的 LLaMA 基础上,参考 Alpaca 和 Alpaca-LoRA 两个项目,对中文进行了训练,70亿参数,git: https://github.com/LC1332/Chinese-alpaca-lora
问答产品
解决问题:如何利用知识库,集合GPT能力进行回答。
方案:
- 利用openAI Embedding将知识库的文档向量化,
- 输入用户问题向量召回topk相关段落,或者答案片段。
- 让 chatGPT 总结,作为问题的prompt。(其实就是利用gpt总结topk答案成流畅的回答)
代码库:https://github.com/GanymedeNil/document.ai
类似的开箱即用的还有:
- https://chatdoc.com/「Chat with documents. Get instant answers with cited sources.」
- Chat2Doc
- ChatPDF
参考资料
- AIGC万字百科全书:底层原理、应用场景、工具示例、行业现状、发展趋势
- 大模型落地应用指北——大模型能吃吗? - 知乎
- 总结当下可用的大模型LLMs - 知乎
- https://arxiv.org/pdf/2211.09110.pdf
- https://www.youtube.com/watch?v=F58vJcGgjt0
- ChatGPT 的基本功:13 种Prompt 用法- 少数派