Skip to content

Commit

Permalink
docs: fix python examples (#829)
Browse files Browse the repository at this point in the history
  • Loading branch information
carenthomas authored Jan 29, 2025
1 parent 1294ff1 commit b9cb85f
Show file tree
Hide file tree
Showing 12 changed files with 328 additions and 214 deletions.
134 changes: 70 additions & 64 deletions examples/Building agents with Letta.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"metadata": {},
"source": [
"## Setup a Letta client \n",
"Make sure you run `pip install letta` and `letta quickstart`"
"Make sure you run `pip install letta_client` and start letta server `letta quickstart`"
]
},
{
Expand All @@ -29,8 +29,9 @@
"metadata": {},
"outputs": [],
"source": [
"!pip install letta_client\n",
"!pip install letta\n",
"! letta quickstart"
"!letta quickstart"
]
},
{
Expand All @@ -40,22 +41,9 @@
"metadata": {},
"outputs": [],
"source": [
"from letta import create_client \n",
"from letta_client import CreateBlock, Letta, MessageCreate \n",
"\n",
"client = create_client() "
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "9a28e38a-7dbe-4530-8260-202322a8458e",
"metadata": {},
"outputs": [],
"source": [
"from letta import LLMConfig, EmbeddingConfig\n",
"\n",
"client.set_default_llm_config(LLMConfig.default_config(\"gpt-4o-mini\")) \n",
"client.set_default_embedding_config(EmbeddingConfig.default_config(provider=\"openai\")) "
"client = Letta(base_url=\"http://localhost:8283\")"
]
},
{
Expand Down Expand Up @@ -92,14 +80,20 @@
"metadata": {},
"outputs": [],
"source": [
"from letta.schemas.memory import ChatMemory\n",
"\n",
"agent_state = client.create_agent(\n",
"agent_state = client.agents.create(\n",
" name=agent_name, \n",
" memory=ChatMemory(\n",
" human=\"My name is Sarah\", \n",
" persona=\"You are a helpful assistant that loves emojis\"\n",
" )\n",
" memory_blocks=[\n",
" CreateBlock(\n",
" label=\"human\",\n",
" value=\"My name is Sarah\",\n",
" ),\n",
" CreateBlock(\n",
" label=\"persona\",\n",
" value=\"You are a helpful assistant that loves emojis\",\n",
" ),\n",
" ]\n",
" model=\"openai/gpt-4o-mini\",\n",
" embedding=\"openai/text-embedding-ada-002\",\n",
")"
]
},
Expand All @@ -110,10 +104,14 @@
"metadata": {},
"outputs": [],
"source": [
"response = client.send_message(\n",
"response = client.agents.messages.create(\n",
" agent_id=agent_state.id, \n",
" message=\"hello!\", \n",
" role=\"user\" \n",
" messages=[\n",
" MessageCreate(\n",
" role=\"user\", \n",
" content=\"hello!\", \n",
" ),\n",
" ]\n",
")\n",
"response"
]
Expand All @@ -123,7 +121,7 @@
"id": "20a5ccf4-addd-4bdb-be80-161f7925dae0",
"metadata": {},
"source": [
"Note that MemGPT agents will generate an *internal_monologue* that explains its actions. You can use this monoloque to understand why agents are behaving as they are. \n",
"Note that MemGPT agents will generate a *reasoning_message* that explains its actions. You can use this monoloque to understand why agents are behaving as they are. \n",
"\n",
"Second, MemGPT agents also use tools to communicate, so messages are sent back by calling a `send_message` tool. This makes it easy to allow agent to communicate over different mediums (e.g. text), and also allows the agent to distinguish betweeh that is and isn't send to the end user. "
]
Expand Down Expand Up @@ -175,7 +173,7 @@
"metadata": {},
"outputs": [],
"source": [
"memory = client.get_core_memory(agent_state.id)"
"memory = client.agents.core_memory.retrieve(agent_id=agent_state.id)"
]
},
{
Expand All @@ -195,7 +193,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_archival_memory_summary(agent_state.id)"
"client.agents.context.retrieve(agent_id=agent_state.id)[\"num_archival_memory\"]"
]
},
{
Expand All @@ -205,7 +203,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_recall_memory_summary(agent_state.id)"
"client.agents.context.retrieve(agent_id=agent_state.id)[\"num_recall_memory\"]"
]
},
{
Expand All @@ -215,7 +213,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_messages(agent_state.id)"
"client.agents.messages.list(agent_id=agent_state.id)"
]
},
{
Expand Down Expand Up @@ -243,11 +241,15 @@
"metadata": {},
"outputs": [],
"source": [
"response = client.send_message(\n",
"response = client.agents.messages.create(\n",
" agent_id=agent_state.id, \n",
" message = \"My name is actually Bob\", \n",
" role = \"user\"\n",
") \n",
" messages=[\n",
" MessageCreate(\n",
" role=\"user\", \n",
" content=\"My name is actually Bob\", \n",
" ),\n",
" ]\n",
")\n",
"response"
]
},
Expand All @@ -258,7 +260,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_core_memory(agent_state.id)"
"client.agents.core_memory.retrieve(agent_id=agent_state.id)"
]
},
{
Expand All @@ -277,11 +279,15 @@
"metadata": {},
"outputs": [],
"source": [
"response = client.send_message(\n",
" agent_id=agent_state.id, \n",
" message = \"In the future, never use emojis to communicate\", \n",
" role = \"user\"\n",
") \n",
"response = client.agents.messages.create(\n",
" agent_id=agent_state.id,\n",
" messages=[\n",
" MessageCreate(\n",
" role=\"user\", \n",
" content=\"In the future, never use emojis to communicate\", \n",
" ),\n",
" ]\n",
")\n",
"response"
]
},
Expand All @@ -292,7 +298,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_core_memory(agent_state.id).get_block('persona')"
"client.agents.core_memory.retrieve_block(agent_id=agent_state.id, block_label='persona')"
]
},
{
Expand All @@ -311,7 +317,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_archival_memory(agent_state.id)"
"client.agents.archival_memory.list(agent_id=agent_state.id)"
]
},
{
Expand All @@ -321,7 +327,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_archival_memory_summary(agent_state.id)"
"client.agents.context.retrieve(agent_id=agent_state.id)[\"num_archival_memory\"]"
]
},
{
Expand All @@ -339,11 +345,15 @@
"metadata": {},
"outputs": [],
"source": [
"response = client.send_message(\n",
"response = client.agents.messages.create(\n",
" agent_id=agent_state.id, \n",
" message = \"Save the information that 'bob loves cats' to archival\", \n",
" role = \"user\"\n",
") \n",
" messages=[\n",
" MessageCreate(\n",
" role=\"user\", \n",
" content=\"Save the information that 'bob loves cats' to archival\", \n",
" ),\n",
" ]\n",
")\n",
"response"
]
},
Expand All @@ -354,7 +364,7 @@
"metadata": {},
"outputs": [],
"source": [
"client.get_archival_memory(agent_state.id)[0].text"
"client.agents.archival_memory.list(agent_id=agent_state.id)[0].text"
]
},
{
Expand All @@ -372,9 +382,9 @@
"metadata": {},
"outputs": [],
"source": [
"client.insert_archival_memory(\n",
" agent_state.id, \n",
" \"Bob's loves boston terriers\"\n",
"client.agents.archival_memory.create(\n",
" agent_id=agent_state.id, \n",
" text=\"Bob's loves boston terriers\"\n",
")"
]
},
Expand All @@ -393,21 +403,17 @@
"metadata": {},
"outputs": [],
"source": [
"response = client.send_message(\n",
"response = client.agents.messages.create(\n",
" agent_id=agent_state.id, \n",
" role=\"user\", \n",
" message=\"What animals do I like? Search archival.\"\n",
" messages=[\n",
" MessageCreate(\n",
" role=\"user\", \n",
" content=\"What animals do I like? Search archival.\", \n",
" ),\n",
" ]\n",
")\n",
"response"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "adc394c8-1d88-42bf-a6a5-b01f20f78d81",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand Down
4 changes: 2 additions & 2 deletions examples/docs/agent_advanced.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
print(f"Created agent with name {agent_state.name} and unique ID {agent_state.id}")

# message an agent as a user
response = client.agents.messages.send(
response = client.agents.messages.create(
agent_id=agent_state.id,
messages=[
MessageCreate(
Expand All @@ -54,7 +54,7 @@
print("Agent messages", response.messages)

# message a system message (non-user)
response = client.agents.messages.send(
response = client.agents.messages.create(
agent_id=agent_state.id,
messages=[
MessageCreate(
Expand Down
4 changes: 2 additions & 2 deletions examples/docs/agent_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
print(f"Created agent with name {agent_state.name} and unique ID {agent_state.id}")

# Message an agent
response = client.agents.messages.send(
response = client.agents.messages.create(
agent_id=agent_state.id,
messages=[
MessageCreate(
Expand All @@ -40,7 +40,7 @@
agents = client.agents.list()

# get the agent by ID
agent_state = client.agents.get(agent_id=agent_state.id)
agent_state = client.agents.retrieve(agent_id=agent_state.id)

# get the agent by name
agent_state = client.agents.list(name=agent_state.name)[0]
Expand Down
Loading

0 comments on commit b9cb85f

Please sign in to comment.