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

LangChain v1.0 大模型的调用

LangChain之大模型的调用

from langchain_openai import ChatOpenAI
from dotenv import load_dotenv
import osload_dotenv()
api_key = os.getenv('DEEPSEEK_API_KEY')
model = ChatOpenAI(model='deepseek-chat',temperature=1.3,base_url='https://api.deepseek.com/',api_key=api_key,)

简单的调用

from My_Model import modelres = model.invoke('请用三句话概括一下机器学习')
print(type(res))
print(res)

输出结果如下:

<class 'langchain_core.messages.ai.AIMessage'>
content='1. 机器学习是让计算机通过数据自动学习规律,并利用这些规律进行预测或决策的技术。\n2. 其核心是通过算法从大量数据中构建模型,使机器能够识别模式、做出判断。\n3. 最终目标是让机器具备不断优化和适应新数据的能力,实现智能化的任务处理。' 
additional_kwargs={'refusal': None} 
response_metadata={
'token_usage': {
'completion_tokens': 68, 
'prompt_tokens': 11, 
'total_tokens': 79, 
'completion_tokens_details': None, 
'prompt_tokens_details': 
{
'audio_tokens': None, 
'cached_tokens': 0}, 
'prompt_cache_hit_tokens': 0, 
'prompt_cache_miss_tokens': 11}, 
'model_provider': 'openai', 
'model_name': 'deepseek-chat', 
'system_fingerprint': 'fp_ffc7281d48_prod0820_fp8_kvcache', 
'id': 'fe56ffd6-7acf-4fee-b788-8d055cb4c41b', 
'finish_reason': 'stop', 'logprobs': None} 
id='lc_run--ad45fb5f-735e-4b43-94a5-390ca1fcd29b-0' 
usage_metadata={
'input_tokens': 11, 
'output_tokens': 68, 
'total_tokens': 79, 
'input_token_details': {
'cache_read': 0}, 
'output_token_details': {}}

使用非深度思考模型时我们无法从中看到深度思考的内容,内容为content里面的数据

构建模型时,我们有一些标准化参数

  • temperature:采样温度
  • timeout:请求超时
  • max_tokens:生成最大的token数
  • api_key:大模型供应商的api密钥
  • base_url:发送请求的端点

使用推理大模型

#DeepSeek库调用方式(包含模型思考过程)
model_think = ChatDeepSeek(model='deepseek-r1-0528', #使用深度思考模型temperature=1.3,api_key=api_key_alibaba,api_base='https://dashscope.aliyuncs.com/compatible-mode/v1'
)

输出其思考过程

from My_Model import model_thinkres = model_think.invoke('请用三句话概括一下机器学习')
print(type(res))
print('思考过程:',res.additional_kwargs['reasoning_content'])
print('返回结果:',res.content)

深度思考模式的流式输出

from My_Model import model_thinkres = model_think.stream('牛顿的第二定律')
for chunk in res:if 'reasoning_content' in chunk.additional_kwargs:print(chunk.additional_kwargs['reasoning_content'], flush=True, end='')else:print(chunk.content, flush=True, end='')
http://www.jsqmd.com/news/44028/

相关文章:

  • 从工匠故事读懂开源软件的特点与价值 - 实践
  • linuxserver/librespeed镜像在host网络模式下自定义web监听端口
  • 详细介绍:pdf解析工具---Miner-u 本地部署记录
  • Maven 无用依赖清理与依赖冲突解决
  • 强化学习从入门到放弃 —— 跟着 OpenAI 学强化学习
  • 使用Action表驱动代替switch…case语句
  • LangChain v1.0 Agent的工具定义及调用
  • linux c qt
  • linux c mysql库
  • L11 RuoYi_数据分页的总条数分析
  • 2025最新江苏苏州、高邮、镇江方向(专线)物流、当日往返运输、配送中心、分拨中心服务商推荐:时效性高,线路可定制,提供仓储、供应链等物流全链条服务
  • c#json帮助类
  • 11.17 事务的隔离级别
  • 获取当前软件的内存
  • foobar2000 v2.25.3 汉化版
  • 详细介绍:深度学习 计算机视觉 Kaggle(上):从理论殿堂起步 ——像素、特征与模型的进化之路
  • 默认SVN忽略bin和obj文件夹,即使是Add也不默认勾选
  • DDOS 科普与防御
  • 思维trick总结
  • Web of Things (WoT) 物描述 2.0 首个公开工作草案发布
  • IGMP 因特网组管理协议
  • msys中安装git for window
  • 图形渲染与 GPU 交互中的 C++ 性能优化技巧 - 教程
  • 详细介绍:代码随想录第七天|哈希表part02--454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和
  • 以太网交换机的吞吐量
  • Traefik:Go 实现的云原生反向代理,微服务路由自动化利器
  • 罗盘
  • 第一章 语法基础——语法基础
  • 计算机网络中最短帧长的概念
  • Cypher语法