RobotGPT LLM 支持Langchain
Project description
RobotGPT LLM
RobotGPT 支持langchain
Quick Install
pip install robotgpt
使用样例
agent块式输出:
from robotgpt.robotgpt import RobotGPTLLM
from langchain.agents import AgentType, initialize_agent
from langchain.tools import BaseTool, StructuredTool, Tool, tool
class CoffeeMaking:
def inference(self):
return "Making coffee requires a coffee machine, coffee beans, sugar packets, and paper cups."
class ImageObjectDetect:
def inference(self, obj):
if obj == "sugar packets":
return "No "+obj
return "There is a "+obj
class AskCustomer:
def inference(self,):
return "Hello! We don’t have any sugar packets at the moment. Do you need to add milk?"
robotgpt_api_url = "https://dataai.harix.iamidata.com/llm/api/ask" #流式智能问答统一适配服务,从用户控制台购买https://console.openai.iamidata.com/api/apiList
model_name = "openai/gpt-3.5-turbo-0613"
robotgpt_api_token = "Your token" #https://dataai-doc.dataarobotics.com/docs/getting-started/authentication
llm = RobotGPTLLM(temperature=0, model_name=model_name,robotgpt_api_token=robotgpt_api_token,robotgpt_api_url=robotgpt_api_url)
imgObjDetect = ImageObjectDetect()
tools = [
Tool.from_function(
func=CoffeeMaking.inference,
name="Coffee making",
description="useful for when the user needs to make coffee."
# coroutine= ... <- you can specify an async method if desired as well
),
Tool.from_function(
func=imgObjDetect.inference,
name="Determine whether the object exists in the picture",
description="useful for when you want to know what is inside the photo. receives object as input. The input to this tool should be a string, representing the object. "
# coroutine= ... <- you can specify an async method if desired as well
),
Tool.from_function(
func=AskCustomer.inference,
name="Ask the customer whether to add milk",
description="useful for when making coffee without sugar packets, you can ask the customer whether you need to add milk. The input to this tool should be a bool, represents whether there is a sugar packet."
# coroutine= ... <- you can specify an async method if desired as well
),
]
agent = initialize_agent(
tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True
)
agent.run(
"给我做杯咖啡"
)
块式输出:
from robotgpt.robotgpt import RobotGPTLLM from langchain.schema import HumanMessage robotgpt_api_url = "https://dataai.harix.iamidata.com/llm/api/ask" #流式智能问答统一适配服务 model_name = "openai/gpt-3.5-turbo-0613" robotgpt_api_token = "Your token" #https://dataai-doc.dataarobotics.com/docs/getting-started/authentication llm = RobotGPTLLM(temperature=0, model_name=model_name,robotgpt_api_token=robotgpt_api_token,robotgpt_api_url=robotgpt_api_url) resp = llm([HumanMessage(content="Write me a song about sparkling water.")]) print(resp)
流式输出:
from langchain.callbacks import StreamingStdOutCallbackHandler from langchain.schema import HumanMessage from robotgpt.robotgpt import RobotGPTLLM robotgpt_api_url = "https://dataai.harix.iamidata.com/llm/api/ask" #流式智能问答统一适配服务 model_name = "openai/gpt-3.5-turbo-0613" robotgpt_api_token = "Your token" #https://dataai-doc.dataarobotics.com/docs/getting-started/authentication chat = RobotGPTLLM(streaming=True, callbacks=[StreamingStdOutCallbackHandler()], temperature=0,model_name=model_name,robotgpt_api_token=robotgpt_api_token,robotgpt_api_url=robotgpt_api_url) resp = chat([HumanMessage(content="Write me a song about sparkling water.")]) print(resp)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
robotgpt-0.0.7.tar.gz
(19.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
robotgpt-0.0.7-py3-none-any.whl
(23.3 kB
view details)
File details
Details for the file robotgpt-0.0.7.tar.gz.
File metadata
- Download URL: robotgpt-0.0.7.tar.gz
- Upload date:
- Size: 19.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82155a9278bf95151498f7269ce2a4b342265676ae2aefef5249dfc3728027ae
|
|
| MD5 |
05ae756b6784fe75bdb39a2e919cd151
|
|
| BLAKE2b-256 |
07be84f88fd929ad0c2cc90729eccf114daf631e5d3c83455103ab4a6171f1f9
|
File details
Details for the file robotgpt-0.0.7-py3-none-any.whl.
File metadata
- Download URL: robotgpt-0.0.7-py3-none-any.whl
- Upload date:
- Size: 23.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
752bceb31b101a83f1f0df9889fe2b42ac2bf7e18ba4f5d519c03fc14d4c5607
|
|
| MD5 |
79e38ed27b046cc064c8a84eab0a8817
|
|
| BLAKE2b-256 |
7993d0df53cc56a426f2bfff1a3f7a2498f167e9da5520e2c2db47878204b6a7
|