当前位置: 首页 > article >正文

进军AI大模型-环境配置

语言环境配置

合法上网工具:

这个T子试试,一直稳定。走我链接免费用5天:
https://wibnm.com/s/ywtc01/pvijpzy

python版本: python3.12

Langchain: Introduction | 🦜️🔗 LangChain  v0.3 9月16日升级的版本

pip3 设置成阿里云的源镜像(能够快速下载依赖包) 

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple

langchain安装

pip install langchain

pip install langchain-openai

检查是否安装成功

使用langchain调用大语言模型

注册API KEY

注册地址

代码

将中文翻译成日语

import os

from langchain_core.messages import SystemMessage, HumanMessage
from langchain_openai import ChatOpenAI

os.environ['OPENAI_API_BASE'] = "https://api.mctools.online/v1"

model = ChatOpenAI(model="gpt-4-turbo")

msg = [SystemMessage(content='请将以下的内容翻译成日语'), HumanMessage(content='你好,初次见面请多关照')]

result = model.invoke(msg)
print(result)

代码解释

  • 导入语句引入了必要的模块和类:
    • os:用于设置环境变量。
    • SystemMessage 和 HumanMessage:来自langchain_core.messages模块,用于构造对话中的消息对象,其中SystemMessage通常用来给模型提供指令或上下文信息,而HumanMessage则表示用户输入的内容。
    • ChatOpenAI:来自langchain_openai库,是用于创建一个可以与OpenAI API交互的对象的类。
  • 设置了一个环境变量OPENAI_API_BASE,指定了自定义的API基础URL。这意味着所有的API请求都将发送到这个特定的域名,而不是默认的OpenAI API地址。这在您需要访问非官方API端点时很有用,比如企业内部部署的服务或是代理服务。
  •  这个地址在https://falm.shop/buy/36 购买 ,因为在国内使用实在是有点不方便
  • 创建了一个ChatOpenAI实例,并指定了要使用的模型名称为gpt-4-turbo。如果你没有apikey执行就会报错
  • 构造了一组消息列表msg,其中包括两个元素:
    • 一个SystemMessage对象,其内容是“请将以下的内容翻译成日语”,这相当于给模型的一个指示,告诉它接下来的任务是要进行中文到日语的翻译。
    • 一个HumanMessage对象,其内容是“你好,初次见面请多关照”,这是实际要被翻译的文本。
  • 使用invoke方法向模型传递消息列表msg,并获取模型生成的响应。invoke方法会返回一个包含模型生成的消息的对象,您可以从中提取出想要的信息,如生成的文本。
  • 最后,print(result)会打印出模型的响应结果,即翻译后的文本。

执行结果

content='こんにちは、初めまして、よろしくお願いします。' 
additional_kwargs={'refusal': None} 
response_metadata={'token_usage': {'completion_tokens': 18, 'prompt_tokens': 36, 'total_tokens': 54, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_name': 'gpt-4-turbo-2024-04-09', 'system_fingerprint': 'fp_1a5512f3de', 'finish_reason': 'stop', 'logprobs': None} id='run-63ca957d-44ad-432e-bace-72e2b3f7a58e-0' usage_metadata={'input_tokens': 36, 'output_tokens': 18, 'total_tokens': 54, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}}

 注意

这里记得把api key添加进来

代码改造

开发流程

1、定义大模型, 参考https://platform.openai.com/docs/models

2、创建提示器prompt

3、解析模型数据,支持文本、JSON、XML...

4、创建链,通过提供一系列逻辑上相连的问题或步骤作为提示,可以引导模型进行更深入、更复杂的思考,从而产生更准确的答案

import os

from langchain_core.messages import SystemMessage, HumanMessage
from langchain_core.output_parsers import StrOutputParser
from langchain_openai import ChatOpenAI

os.environ['OPENAI_API_BASE'] = "https://api.mctools.online/v1"
#1. 定义模型
model = ChatOpenAI(model="gpt-4-turbo")

#2. prompt
msg = [SystemMessage(content='请将以下的内容翻译成日语'), HumanMessage(content='你好,初次见面请多关照')]
# result = model.invoke(msg)
# print(result)

# 3.解析数据
parser = StrOutputParser()

# print(parser.invoke(result))

# 4.创建链
chain = model | parser
# 链调用
print(chain.invoke(msg))


http://www.kler.cn/a/456308.html

相关文章:

  • vue3使用video-player实现视频播放(可拖动视频窗口、调整大小)
  • 爱思唯尔word模板
  • 2024/12/29周报
  • 【黑马头条训练营】day02-黑马头条-App端文章展示
  • 【SpringBoot教程】IDEA快速搭建正确的SpringBoot版本和Java版本的项目
  • 埃斯顿机器人程序案例多个点位使用变量
  • Redis 数据类型全解析:基础与进阶应用场景
  • 【PHP】部署和发布PHP网站到IIS服务器
  • 如何安全删除 GitHub 提交记录及其操作步骤
  • 2848、与车相交的点
  • Kafka 数据传输的事务类型
  • SLES网络
  • 【机器学习(九)】分类和回归任务-多层感知机(Multilayer Perceptron,MLP)算法-Sentosa_DSML社区版 (1)111
  • 机器学习随机森林回归时间序列预模型中时间滑动窗口作用以及参数设置
  • 基于openEuler22.09部署OpenStack Yoga云平台(一)
  • 《机器视觉:开启智能新时代》
  • MySQL学习之表查询操作
  • Express.js 有哪些常用的中间件?
  • 【Flutter_Web】Flutter编译Web第三篇(网络请求篇):dio如何改造方法,变成web之后数据如何处理
  • 【Java】线程相关面试题 (基础)
  • 工业安全监测审计系统(源码+文档+部署+讲解)
  • 【我的 PWN 学习手札】IO_FILE 之 stdout任意地址读
  • 普通的树形数据primevue的treetable组件的treetable[ ]
  • android系统查找应用包名以及主activity:
  • WPF 绘制过顶点的圆滑曲线(样条,贝塞尔)
  • 创建用于预测序列的人工智能模型,用Keras Tuner探索模型的超参数。