from definable.agents import Agent
from definable.agents.toolkits import KnowledgeToolkit
from definable.knowledge import Knowledge, InMemoryVectorDB, OpenAIEmbedder
from definable.models import OpenAIChat
# Build a knowledge base
knowledge = Knowledge(
vector_db=InMemoryVectorDB(),
embedder=OpenAIEmbedder(),
)
knowledge.add("Definable supports OpenAI, DeepSeek, Moonshot, and xAI models.")
knowledge.add("Agents can use tools, middleware, and knowledge bases.")
knowledge.add("The @tool decorator converts functions into agent-callable tools.")
# Create the toolkit
toolkit = KnowledgeToolkit(knowledge=knowledge)
# Use with an agent
agent = Agent(
model=OpenAIChat(id="gpt-4o"),
toolkits=[toolkit],
instructions="You are a documentation assistant. Search the knowledge base when you need specific information.",
)
output = agent.run("What models does Definable support?")
print(output.content)