调用百度的大模型API接口实现AI对话!手把手教程!

news2024/12/23 17:25:56

本文介绍如何使用百度的大模型API接口实现一个AI对话项目

1 注册百度云

2 获取API接口

3 配置环境

4 代码编写与运行

5 chat models


1 注册百度云

        搜索百度云,打开官网注册,充值一点点大米(收费很低,大概生成几个句子花费一毛钱)

注册之后一定要完成个人认证,不然无法使用。

2 获取API接口

完成注册与认证之后,打开千帆大模型平台,点开引用接入,应用名称起个名字,描述随便打几个字就行。

获取API Key 和Secret Key(注意保密)

完成之后,大功告成。

3 配置环境

 安装Anaconda和PyCharm

Anaconda官网:Download Anaconda Distribution | Anaconda

PyCharm官网:PyCharm:适用于数据科学和 Web 开发的 Python IDE (jetbrains.com)

PyCharm建议下载专业版的,上网找个激活码就ok。

安装过程很简单,网上教程一大堆,随便找个一步步来就可以。就不再赘述。

创建虚拟环境

安装好Anaconda之后,在开始菜单栏会有文件夹,打开Anaconda Prompt(记住不能错,必须是Anaconda Prompt)

创建一个大模型的环境,然后下载库。依次运行以下代码。

 
conda create -n llm python=3.10
#创建llm

conda activate llm
#激活llm

pip install langchain
pip install qianfan

#下载

如果在后续的运行中出现缺失包的报错,那就缺的包pip install 下载一下就行啦。

4 代码编写与运行

打开pycharm,新建一个py文档,输入如下代码。

#1.导入包
import os
#QianfanLLMEndpoint:通常提供较为简单的文本补全接口,可能不包含复杂的对话管理和上下文理解能力。
from langchain_community.llms import QianfanLLMEndpoint

#2.设置千帆的API-KEY和SERECT-KEY
os.environ['QIANFAN_AK']='cfgxxxxxxxxxxx9nu7'
os.environ['QIANFAN_SK']='Txxxxxxxxxxxxxxxxxxxxxxxx'

#3.实例化模型

llm=QianfanLLMEndpoint(model='ChatGLM2-6B-32K')
#可以更换模型,在langchain官方文档里面

#4.输入问题,打印结果
res =llm('llm大模型是什么?')
print(res)

        通过调用千帆(Qianfan)的API来实现文本补全功能。代码逐行解释:

  1. 导入Python的os模块,这个模块提供了许多与操作系统交互的功能,比如设置环境变量。
  2. 导入langchain_community.llms模块中的QianfanLLMEndpoint类,这个类用于创建一个与千帆大模型交互的接口。
  3. 设置环境变量QIANFAN_AKQIANFAN_SK,这两个变量分别代表千帆API的Access Key和Secret Key。这些密钥是API调用的身份验证信息,需要从千帆平台获取。
  4. 实例化QianfanLLMEndpoint类,创建一个名为llm的对象。这里指定了使用的模型为ChatGLM2-6B-32K,这个参数可以根据需要更换为其他模型。
  5. 使用llm对象调用ChatGLM2-6B-32K模型,传入一个问题'llm大模型是什么?',然后打印出模型返回的结果。

如图所示:

运行代码,查看结果。

完美生成!

如果想要更换大模型,直接在参数里面指明大模型的名字即可。

llm=QianfanLLMEndpoint(model='ChatGLM2-6B-32K')
#可以更换模型,在langchain官方文档里面

官方文档地址:LLMs | 🦜️🔗 LangChain

5 chat models

如果想要完成对话任务,运行以下代码。

#1.导入包
import os
from langchain_community.chat_models import QianfanChatEndpoint
from langchain_core.language_models.chat_models import HumanMessage

#2.设置千帆的API-KEY和SERECT-KEY
os.environ['QIANFAN_AK']='cxxxxxxxxxxxxxxxxxxxxx'
os.environ['QIANFAN_SK']='TxxxxxxxxxxxxxxxxxxxxxxxxI'

#3.实例化模型
chat = QianfanChatEndpoint(streaming=True)

messages = [HumanMessage(content="给我写一首诗")]
res = chat(messages)
print(res)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1960773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

立仪光谱共焦传感器应用测量之:汽车连接器高度差测量

01 检测要求,要求测量汽车连接器的高度差 02 检测方式 根据观察,我们采用立仪科技光谱共焦H4UC控制器搭配D65A52系列镜头,角度最大,外径最大,量程大,可以有效应用于测量弧面,大角度面等零件。 0…

【嵌入式之RTOS】什么是著名的食客问题

目录 一、问题描述 二、四个条件 三、实际应用中的意义 著名的“食客问题”(Dining Philosophers Problem)是一个经典的计算机科学问题,用来说明并发编程中的资源竞争和死锁问题。这个问题最初是由荷兰计算机科学家Edsger Dijkstra提出的…

秘密实验室开服教程(SCP: Secret Laboratory)

1、购买后登录服务器(百度莱卡云) 购买服务器后,如下图👇,面板信息都在产品详情页面内 注意:请不要用你的莱卡云账号信息去登陆服务器面板 进入控制面板后会出现正在安装的界面,安装时长约5分…

【排序算法(二)】——冒泡排序、快速排序和归并排序—>深层解析

前言: 接上篇,排序算法除了选择排序(希尔排序)和插入排序(堆排序)之外,还用交换排序(冒泡排序、快速排序)和归并排序已经非比较排序,本篇来深层解析这些排序算…

2 卷积神经网络CNN

文章目录 LeNet-5AlexNetGoogLeNetResNet 本章代码均在kaggle上运行成功 LeNet-5 import torch import torch.nn as nn from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pyplot as plt from matplotlib_inline impo…

木马后门实验

实验拓扑 实验步骤 防火墙 配置防火墙—充当边界NAT路由器 边界防火墙实现内部 DHCP 分配和边界NAT需求,其配置如下 登录网页 编辑接口 配置e0/0 配置e0/1 编辑策略 测试:内部主机能获得IP,且能与外部kali通信 kali 接下来开启 kali 虚…

【视频讲解】后端增删改查接口有什么用?

B站视频地址 B站视频地址 前言 “后端增删改查接口有什么用”,其实这句话可以拆解为下面3个问题。 接口是什么意思?后端接口是什么意思?后端接口中的增删改查接口有什么用? 1、接口 概念:接口的概念在不同的领域中…

BUGKU-WEB-好像需要密码

如果点击start attrack 后出现 Payload set 1: Invalid number settings 的提示,先点hex 后点 decimal 再开始start attrack,这是一个软件bug,需要手动让它刷新。 解题思路 先随便输入测试:admin看看源码吧那就爆破了 据说&…

项目比赛经验分享:如何抓住“黄金一分钟”

项目比赛经验分享:如何抓住“黄金一分钟” 前言引起注意:用事实和故事开场明确痛点:描述问题和影响介绍解决方案:简明扼要激发兴趣:使用视觉辅助概述演讲结构:清晰的路线图我的开场白示例结语 前言 在创新的…

【小超嵌入式】 交叉编译工具安装过程

1、下载交叉编译工具链 ● 确定目标平台: 首先,你需要确定你的目标平台是什么,比如ARM、MIPS等。不同的目标平台需要不同的交叉编译工具链。 ● 获取工具链: 官方网站:通常可以从交叉编译器的官方网站下载适用于你的…

一番赏小程序开发,为消费者带来更多新鲜体验

一番赏作为经典的潮玩方式,深受消费者的喜爱,一番赏还会与不同的热门IP合作,不断推出新的赏品,吸引众多粉丝。赏品的内容非常丰富,从手办、公仔玩具等,还设有隐藏款和最终赏商品,对玩家拥有着非…

人工智能大模型发展的新形势及其省思

自2022年底OpenAI发布ChatGPT以来,大模型产业发展先后经历了百模大战、追求更大参数、刷榜竞分,直到近期各大厂商相继加入价格战,可谓热点纷呈。大模型的技术形态也从单纯文本发展到了多模态,从模拟人类大脑的认知功能发展到操控机…

暂存篇:高频面试题基本总结回顾(含笔试高频算法整理)

干货分享,感谢您的阅读! (暂存篇---后续会删除,完整版和持续更新见高频面试题基本总结回顾(含笔试高频算法整理)) 备注:引用请标注出处,同时存在的问题请在相关博客留言…

韦东山瑞士军刀项目自学之分析部分GPIO_HAL库函数代码

GPIO_HAL部分库函数分析 主要是分析了宏定义,这些宏定义可以被写入到对应的寄存器之中,从引脚到GPIO组再到模式速度等等,每一个参数都对应着寄存器的一位或几位。以后自己还是根据库函数来开发吧,太麻烦了。

《浅谈如何培养树立正确的人工智能伦理观念》

目录 摘要: 一、引言 二、《机械公敌》的情节与主题概述 三、人工智能伦理与法律问题分析 1.伦理挑战 2.法律问题 四、培养正确的人工智能伦理观念的重要性 五、培养正确的人工智能伦理观念的途径与方法 1.加强教育与宣传 2.制定明确的伦理准则和规范 3.…

Java学习Day16:基础篇6

1.静态和非静态 2.调用静态和非静态的过程 注:在Java中,同类中,确实可以使用类的对象来调用静态方法,尽管这不是推荐的做法。静态方法属于类本身,而不是类的任何特定实例。因此,理论上讲,你应该…

分隔链表(LeetCode)

题目 给你一个链表的头节点 和一个特定值 ,请你对链表进行分隔,使得所有 小于 的节点都出现在 大于或等于 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 示例1: 输入:, 输出: 示例2&a…

七言-绝美崇州

题记 今天,2024年07月30日,在看到《今日崇州》 发布的航拍风光照片之后,这才方知笔者虽已寄居崇州“西川第一天”街子古镇养老逾五年,竟然不知崇州拥有如此之多的青山绿水,集生态、宜居、智慧、文化、旅游丰富资源于一…

python if语句如何结束

python if语句如何结束&#xff1f;下面给大家介绍两种终止方法&#xff1a; break 用于提前终止循环&#xff1b; num 1 while num < 100:if num > 10:breakprint(num)num 2 print("结束") 结果如下&#xff1a; 1 3 5 7 9 结束 continue 用于跳出当前循…

为 Oh My Zsh 安装 Powerlevel10k 主题

继上一章 安装Zsh 与 oh my zsh 打开终端&#xff0c;运行以下命令&#xff0c;从 GitHub 上克隆 Powerlevel10k 代码库&#xff0c;并将文件放到 Oh My Zsh 的配置文件夹中 git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k 用文本…