Skip to main content

No project description provided

Project description

Langchain extensions

Biding 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-message",
    "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-message",
    "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.3.2.tar.gz (116.8 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.3.2-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for hyperpocket_langchain-0.3.2.tar.gz
Algorithm Hash digest
SHA256 db14fc720a33f5814f0a13db794b136829b893ce58d7f39bcb630f7233bde38a
MD5 226c8caf7c1cff0ad6b294f08906017b
BLAKE2b-256 45e9a029602a6c798486bc39cf8ec855c4559f0597c9154fa4a30c8975a1b711

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hyperpocket_langchain-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7d3b00aa1134e110774d6694378b0d5c3f7ca05657f7ae11506699524d745b14
MD5 a4715b6e57aa53c0f058e77710166cfd
BLAKE2b-256 dc67b44181f3c52a4c56a58497cf48566e5108189559e8b286643bbe7e0132e9

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