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.6.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.6-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for hyperpocket_langchain-0.5.6.tar.gz
Algorithm Hash digest
SHA256 c60e21a84d6bf1bbd1afb1efe41559460511e6608b32bff61d2e117810880acb
MD5 d5b96cde23adb33d8fa9f4fd7c357b57
BLAKE2b-256 564d4afd8bf29d524612e199d3cd91fe783b2a2ce02fb3117ade972536479c32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hyperpocket_langchain-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6b2f3a0c02c74c8b333031796a6cf1f2f13415f7c51191bb2b0dd93f5e14bd44
MD5 e7a1908aba3911cab27abd4324c84211
BLAKE2b-256 c7380a8382690cfbd392a7d01288667024d4f213b260c2b7d711714a186442f8

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