Skip to main content

No project description provided

Project description

Langchain extensions

Binding Pocket Tools

from langchain_openai import ChatOpenAI

from hyperpocket.config.settings import settings
from hyperpocket_langchain import PocketLangchain

pocket = PocketLangchain(tools=[
    "https://github.com/vessl-ai/hyperpocket/tree/main/tools/slack/get-messages",
    "https://github.com/vessl-ai/hyperpocket/tree/main/tools/slack/post-message",
])
# get langchain compatible tools from pocket
tools = pocket.get_tools()

llm = ChatOpenAI(
    model="gpt-4o",
    api_key=settings["OPENAI_API_KEY"]
)

# bind tool with llm
llm_with_tools = llm.bind_tools(tools)

Agent Examples

from langchain.agents import create_tool_calling_agent, AgentExecutor
from langchain.memory import ConversationBufferMemory
from langchain_core.prompts import ChatPromptTemplate, MessagesPlaceholder
from langchain_openai import ChatOpenAI

from hyperpocket_langchain import PocketLangchain

pocket = PocketLangchain(tools=[
    "https://github.com/vessl-ai/hyperpocket/tree/main/tools/slack/get-messages",
    "https://github.com/vessl-ai/hyperpocket/tree/main/tools/slack/post-message",
])

# get langchain compatible tools from pocket
tools = pocket.get_tools()

llm = ChatOpenAI()

prompt = ChatPromptTemplate.from_messages(
        (
            "system",
            "You are very powerful linear assistant. You can help the user do something like commenting, get some issues",
        ),
        ("placeholder", "{chat_history}"),
        ("user", "{input}"),
        MessagesPlaceholder(variable_name="agent_scratchpad"),
    ]
)

memory = ConversationBufferMemory(memory_key="chat_history", return_messages=True)
agent = create_tool_calling_agent(llm, tools, prompt)
agent_executor = AgentExecutor(
    agent=agent,
    tools=tools,
    memory=memory,
    verbose=True,
    handle_parsing_errors=True
)

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

hyperpocket_langchain-0.5.5.tar.gz (117.3 kB view details)

Uploaded Source

Built Distribution

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

hyperpocket_langchain-0.5.5-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

Details for the file hyperpocket_langchain-0.5.5.tar.gz.

File metadata

File hashes

Hashes for hyperpocket_langchain-0.5.5.tar.gz
Algorithm Hash digest
SHA256 37f6ba6b3f30e77c808aabe7d9c5c84cd13ef8fc1cce5230d4e9b8d276fcf918
MD5 98387530c98459d4acf7e353435a2d4f
BLAKE2b-256 f41a0d1d081c42fdce2e46142beca6edbc781bb6e72df0892d0b455319d78018

See more details on using hashes here.

File details

Details for the file hyperpocket_langchain-0.5.5-py3-none-any.whl.

File metadata

File hashes

Hashes for hyperpocket_langchain-0.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6361e7c217fe96b002cf08f2d2ff328ec7ed7a3eb37a84b9f0278b8b22d42484
MD5 2afdc9dcf0facf31f5b3c271b6bff8f7
BLAKE2b-256 d3d0b244c04301dbce5bfb4136ffcc989595726c22ca3fca91257849c1683b2c

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