【AI大模型应用开发】【LangChain系列】9. 实用技巧:大模型的流式输出在 OpenAI 和 LangChain 中的使用

  • 大家好,我是同学小张,日常分享AI知识和实战案例
  • 欢迎 点赞 + 关注 👏,持续学习持续干货输出
  • +v: jasper_8017 一起交流💬,一起进步💪。
  • 微信公众号也可搜【同学小张】 🙏

本站文章一览:

在这里插入图片描述


当大模型的返回文字非常多时,返回完整的结果会耗费比较长的时间。如果等待大模型形成完整的答案再展示给用户,明显会给用户不好的体验。所以,现在市面上大多数的AI应用,在给用户结果时,都是以流式输出的方式展示给用户的。所谓的流式输出,就是类似打字机式的方式,一个字或一个词的输出,给用户一种答案逐渐出现的动画效果。

今天我们来学习下如何流式输出大模型的返回结果。本文将涵盖 LangChain 的流式输出方式和 OpenAI 原生的流式输出方式。

### LangChain OpenAILangChain DeepSeek 的功能差异 在开发基于大语言模型的应用时,LangChain 提供了多种接口来集成不同的模型服务提供商。以下是 LangChain OpenAI LangChain DeepSeek 的主要功能差异: #### 1. 模型支持 - **LangChain OpenAI** 支持 OpenAI 提供的所有模型,包括 GPT 系列(如 gpt-3.5-turbo、gpt-4 等)。这些模型以其强大的泛化能力广泛的训练数据而闻名[^2]。 - **LangChain DeepSeek** 支持 DeepSeek 提供的模型,例如 deepseek-v3 deepseek-chat。DeepSeek 模型通常以高性能低成本为特点,适合特定任务或预算有限的场景[^1]。 #### 2. API 调用方式 - **LangChain OpenAI** 使用 `ChatOpenAI` 类进行实例化,并通过 `invoke` 方法调用模型。它依赖 OpenAI 的官方 API,需要提供 API Key 可选的其他参数(如温度、最大令牌数等)[^2]。 - **LangChain DeepSeek** 使用 `BaseChatOpenAI` 类进行实例化,同样需要提供 API Key Base URL。DeepSeek 的 API 调用方式与 OpenAI 类似,但其 Base URL 模型名称有所不同[^1]。 #### 3. 配置灵活性 - **LangChain OpenAI** 提供了更丰富的配置选项,例如支持流式输出(streaming)、回调函数(callbacks)以及详细的日志记录。这些功能有助于开发者更好地调试优化模型性能[^2]。 - **LangChain DeepSeek** 的配置选项相对较少,但在基本功能上与 OpenAI 保持一致。对于大多数应用场景,DeepSeek 的配置已足够满足需求[^1]。 #### 4. 成本与性能 - **LangChain OpenAI** 的成本较高,尤其是使用 GPT-4 等高端模型时。然而,其性能稳定性在业界处于领先地位[^2]。 - **LangChain DeepSeek** 提供更具性价比的选择,尤其适合中小型企业或个人开发者。虽然性能可能略逊于 OpenAI 模型,但在许多任务中仍表现出色[^1]。 #### 5. 社区支持与文档 - **LangChain OpenAI** 拥有庞大的用户社区完善的官方文档,遇到问题时更容易找到解决方案[^2]。 - **LangChain DeepSeek** 的社区规模较小,文档相对简略。不过,随着 DeepSeek 的快速发展,相关资源正在逐步丰富。 ```python # LangChain OpenAI 示例 from langchain_openai import ChatOpenAI import os llm = ChatOpenAI(api_key=os.getenv("OPENAI_API_KEY"), model="gpt-3.5-turbo") response = llm.invoke("什么是大模型?") print(response.content) # LangChain DeepSeek 示例 from langchain_deepseek import BaseChatOpenAI import os model = BaseChatOpenAI( model="deepseek-chat", temperature=0, openai_api_key=os.getenv("DEEPSEEK_API_KEY"), openai_api_base='https://api.deepseek.com/v1' ) response = model.invoke("什么是大模型?") print(response.content) ``` #### 总结 LangChain OpenAI LangChain DeepSeek 各有优劣。如果追求高性能广泛支持,OpenAI 是更好的选择;如果注重成本效益,DeepSeek 则更为合适。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

同学小张

如果觉得有帮助,欢迎给我鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值