通过Promptulate低代码解决方案轻松创建高效LLM Agent应用

  • 💖 Brief:大家好,我是Zeeland。Tags: 大模型创业、LangChain Top Contributor、算法工程师、Promptulate founder、Python开发者。
  • 📝 CSDN主页:Zeeland🔥
  • 📣 个人说明书:Zeeland
  • 📣 个人网站:https://me.zeeland.cn/
  • 📚 Github主页: Undertone0809 (Zeeland)
  • 🎉 支持我:点赞👍+收藏⭐️+留言📝 我会定期在博客、个人说明书、论坛中做一些技术分享。也欢迎大家阅读我的个人说明书,大家可以在这里快速了解我和我做过的事情,期待和你交个朋友,有机会我们一起做一些有意思的事情

简介

在LLM应用的开发中,开发者常常面临着选择合适的大型语言模型(LLM)和集成多样化工具的挑战。现在,有了promptulate库中的pne.chat()函数,这一切变得前所未有的简单。本文将介绍如何使用pne.chat()来构建强大而灵活的LLM应用。

项目Github: https://github.com/Undertone0809/promptulate

相关文档

pne.chat():一站式AI对话解决方案

pne.chat()promptulate库的核心功能之一,它集成了多种LLM的能力,包括OpenAI、Anthropic、Cohere等超过100种不同的LLM。这意味着开发者可以通过一个统一的接口,调用不同的LLM API,极大地简化了开发流程。

像OpenAI一样调用

使用pne.chat()进行对话就像与OpenAI的GPT模型聊天一样简单。你只需要准备好对话消息,pne.chat()会自动处理格式转换,并返回响应。

import promptulate as pne

messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Who are you?"},
]
response: str = pne.chat(messages=messages)
print(response)
I am a helpful assistant designed to assist you with any questions or tasks you may have. How can I assist you today?

获取元数据

如果你需要更复杂的功能,元数据是非常重要的。通过设置return_raw_response=True,你可以获取原始响应,其中包含了元数据。

import promptulate as pne

response = pne.chat(
    messages="When is your knowledge up to?",
    model="gpt-4-1106-preview"
)
print(response)
My knowledge is up to date as of March 2021. Any events or developments occurring after that date would not be included in my responses. If you're asking for any recent information or updates, I recommend checking the latest sources as my information might not be current.

调用任意模型

pne.chat()支持调用超过100种LLM,你只需要提供相应的API密钥即可。以下是使用Anthropic的claude-2模型的示例:

import os
import promptulate as pne

os.environ["ANTHROPIC_API_KEY"] = "你的API密钥"

response = pne.chat(messages=messages, model="claude-2")
print(response)

输出格式化

在构建复杂的Agent项目时,输出格式化是提高系统稳健性的必要措施。pne.chat()可以返回格式化的对象,这对于确保输出的一致性和可用性至关重要。

from typing import List
import promptulate as pne
from pydantic import BaseModel, Field

class LLMResponse(BaseModel):
    provinces: List[str] = Field(description="中国所有省份")

response: LLMResponse = pne.chat(
    messages="请告诉我中国所有的省份。",
    output_schema=LLMResponse
)
print(response.provinces)
I am an AI assistant here to help you with any questions or tasks you may have. How can I assist you today?
{'id': 'chatcmpl-8UK0tfwlkixWyaxKJ2XWNGMVGFPo0', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'I am an AI assistant here to help you with any questions or tasks you may have. How can I assist you today?', 'role': 'assistant'}}], 'created': 1702237461, 'model': 'gpt-3.5-turbo-0613', 'object': 'chat.completion', 'system_fingerprint': None, 'usage': {'completion_tokens': 25, 'prompt_tokens': 20, 'total_tokens': 45}, '_response_ms': 2492.372}

实时流式响应

pne.chat()还支持流式响应,这意味着你可以实时与你的助手进行交流。

import promptulate as pne

response = pne.chat("你是谁?", stream=True)

for chunk in response:
    print(chunk)

pne.chat()的优势

  • 全面性:支持超过100种LLM,涵盖了市面上大多数主流的模型。
  • 易用性:统一的API接口,简化了从不同LLM获取响应的过程。
  • 灵活性:支持流式响应和格式化输出,适应不同的开发需求。
  • 扩展性:提供了插件、存储和LLM扩展的高级抽象,方便开发者根据需求进行定制。
  • 中文优化:针对中文场景进行了特别优化,更适合中文用户使用。

结语

pne.chat()作为一个一站式的AI对话开发解决方案,为开发者提供了前所未有的便利性和强大功能。无论是想要快速集成LLM,还是需要构建复杂的对话系统,pne.chat()都能大大降低开发难度,提高开发效率。随着promptulate未来对工具和检索方法的持续扩展,pne.chat()将成为LLM应用开发的不二选择。

  • 24
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Zeeland

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值