Skip to main content

RobotGPT LLM 支持Langchain

Project description

RobotGPT LLM

RobotGPT 支持langchain-0.1.4

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


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.14.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robotgpt-0.0.14-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file robotgpt-0.0.14.tar.gz.

File metadata

  • Download URL: robotgpt-0.0.14.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

Hashes for robotgpt-0.0.14.tar.gz
Algorithm Hash digest
SHA256 be254508565245eb0097cdbd2ffa6d4b0aa8ef907c5b257f8cef67ba18299b90
MD5 11ec8108f246d97ceab76e8ce7c21d35
BLAKE2b-256 be360f3c0a4a4359da8ea32c5635a30409d29264df520cb3495212710c562c08

See more details on using hashes here.

File details

Details for the file robotgpt-0.0.14-py3-none-any.whl.

File metadata

  • Download URL: robotgpt-0.0.14-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

Hashes for robotgpt-0.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 451d736893502f3db80bab6a8bf3591b9275b47f92f6426c8d69eec2b42eddf4
MD5 aae8bb518e167a3cadc1dfe7f6f5ab54
BLAKE2b-256 2d91f1530141678ba856775e3626c1e7fa3013d31b9a14ec127178e57960bd40

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page