[Feelings & Sharing] 如何在R语言中与大模型聊天
Tofloor
poster avatar
fallingstar-ten
deepin
2024-08-25 16:27
Author

目前的支持

在R语言中,已经有一些包对大模型api调用和对话进行了封装,主要的代表是chattr包,实现了在R终端和Rstudio界面的大模型对话交互,其提示词和角色设定上主要为精通R语言的数据分析师,主要支持OpenAI和本地侧端模型。

最近做的改进

  1. 考虑到国内模型基本上与Openai协议兼容,我最近给chattr包增加了国内的kimi,智谱,千问和01万物的支持。
  2. 为了突破原有角色设定的限制,我引入了lobechat项目的300+的角色设定。

效果如何?

这是在引入国内大模型后,没有修改角色设定,这个时候还是不忘初心相当嘴硬的:

446b1114030036fbd69ef428d78aff9.png

当我引入角色系统后:

图片.png

那么如何使用和体验呢?

  1. 申请一个apikey,openai,kimi,智谱,千问和01万物均可

  2. 安装包及设置调用

    pak::pak("rainoffallingstar/chattragents")
    pak::pak("rainoffallingstar/chattr") # 先装我的开发包,官方包还没有合并我的PR
    library(chattragents)
    library(chattr)
    Sys.setenv("OPENAI_API_KEY" = "####################") # 输入来自服务商的apikey
    chattr::chattr_use("yi") # 选择模型提供商,比如01万物是yi,kimi是moonshot8k,千问是qwen,智谱是glm4
    chattragent_use("情感陪伴师") # 修改角色设定,直接输入想要的角色,会在角色数据库中自动检索
    chattr::chattr("有个比我老的人,喊我姐,我生气了,哄哄我") # 开始对话吧
    
    # 当然我也提供了自定义大模型的函数,直接调用如下,比如
    model_config(provider = "OpenAI - Chat Completions", # 这个不要动,以下参数可以动
                               path = "https://open.bigmodel.cn/api/paas/v4/chat/completions", # 调用的api url
                               label = "GLM4", # 你想给模型的标签
                               model = "glm-4-0520", # 实际要调用的模型
                               file = "dev/glm.yml", # 存为yaml文件
                               test_apikey = "$OPENAI_API_KEY"
    )
    # 设置好了就可以开始
    chattr::chattr("有个比我老的人,喊我姐,我生气了,哄哄我") # 开始对话吧
    
    
Reply Favorite View the author
All Replies
panda·野望
deepin
2024-08-25 17:20
#1

有没有实战案例呀?比如对数据进行分析给出报告

Reply View the author
fallingstar-ten
deepin
2024-08-25 17:31
#2
panda·野望

有没有实战案例呀?比如对数据进行分析给出报告

现在好像还没有这么智能,但是可以直接在编辑的.R里面给生成代码,以及读取环境中的dataframe

Reply View the author