Skip to content

Commit 80ddd0a

Browse files
committed
Edits and Fixes
1 parent 497f6af commit 80ddd0a

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

blog/2024-11-27-definition-of-agent.mdx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
slug: definition-of-agent
3-
title: The thorny question of what is an agent?
3+
title: What is an agent?
44
authors: [gingerhendrix]
55
tags: []
66
---
@@ -18,11 +18,13 @@ Russell and Norvig (R&N) define an agent as *"anything that can be viewed as per
1818

1919
R&N also go on to define *goal-directed agents*, which are agents that are given goals to work towards rather than procedures for performing a task. Prompting with LLMs is almost always goal-directed, we specify to the LLM what we want it to do, not how to do it.
2020

21+
This kind of definition isn't really helpful unless you are specifically looking a catch-all term.
22+
2123
## Environments
2224

23-
The most important takeaway from the R&N definition is that agents are defined in terms of their *environment*. LLM agents may have quite trivial environments, a simple chatbot can be considered an agent, but the only means the agent has of affecting its environment is through text responses to a human, and similarly the only feedback it receives is from the human responses.
25+
The one important takeaway from the R&N definition is that agents are defined in terms of their *environment*. LLM agents may have quite trivial environments, a simple chatbot can be considered an agent, but the only means the agent has of affecting its environment is through text responses to a human, and similarly the only feedback it receives is from the human responses.
2426

25-
The key to having useful agents is in providing rich environments to the agents. [Shunyu Yao](https://www.latent.space/p/shunyu) made this point very well on the latent.space podcast.
27+
The key to having useful agents is in providing rich environments to the agents. It's well worth listening to [Shunyu Yao](https://www.latent.space/p/shunyu) on the latent.space podcast where among other things he discusses the importance of thinking about the agentic environment.
2628

2729
## Agentic Systems
2830

@@ -64,7 +66,7 @@ At the smallest scale, it's interesting to think about how agentic building bloc
6466

6567
However, there are more agentic methods of composition. For instance, we can compose conversational agents by simply allowing them to talk to each other. This brings a very different range of patterns than software developers are used to, often with ideas from how humans are composed to work towards goals - teams, supervisors, specialists etc.
6668

67-
We can also think about the composition of larger agentic systems. [Anthropic's MCP](https://modelcontextprotocol.io/) provides a good example of this. The Claude desktop agent can now interface with other agentic software, for example cursor, we could imagine a scenario where I'm using the composer agent in Cursor, and I need to give the cursor agent some info I read in a blog post that I bookmarked. Perhaps the cursor agent could communicate with claude, which may in turn invoke a Google Chrome agent that can search my bookmarks, and in a goal-directed manner they co-operate to perform the task.
69+
We can also think about the composition of larger agentic systems. [Anthropic's MCP](https://modelcontextprotocol.io/) provides a good example of this. The Claude desktop agent can now interface with other agentic software, for example Cursor. We could imagine a scenario where I'm using the composer agent in Cursor, and I need to give the Cursor agent some info I read in a blog post that I bookmarked. Perhaps the Cursor agent could communicate with Claude, which may in turn invoke a Google Chrome agent that can search my bookmarks, and in a goal-directed manner they co-operate to perform the task.
6870

6971
A final thing to think about in agentic composition is that through LLMs' code-writing abilities it is possible for LLMs to build their own glue code to facilitate integration with other systems/agents. A great example of this (and perhaps my favourite paper of the year) is the [Agora Protocol](https://agoraprotocol.org/) which demonstrates how agents can dynamically negotiate protocols between agents which bypass LLM calls completely.
7072

blog/2024-11-27/agentic_loop.tldr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"tldrawFileFormatVersion":1,"schema":{"schemaVersion":2,"sequences":{"com.tldraw.store":4,"com.tldraw.asset":1,"com.tldraw.camera":1,"com.tldraw.document":2,"com.tldraw.instance":25,"com.tldraw.instance_page_state":5,"com.tldraw.page":1,"com.tldraw.instance_presence":5,"com.tldraw.pointer":1,"com.tldraw.shape":4,"com.tldraw.asset.bookmark":2,"com.tldraw.asset.image":5,"com.tldraw.asset.video":5,"com.tldraw.shape.group":0,"com.tldraw.shape.text":2,"com.tldraw.shape.bookmark":2,"com.tldraw.shape.draw":2,"com.tldraw.shape.geo":9,"com.tldraw.shape.note":8,"com.tldraw.shape.line":5,"com.tldraw.shape.frame":0,"com.tldraw.shape.arrow":5,"com.tldraw.shape.highlight":1,"com.tldraw.shape.embed":4,"com.tldraw.shape.image":4,"com.tldraw.shape.video":2,"com.tldraw.binding.arrow":0}},"records":[{"gridSize":10,"name":"","meta":{},"id":"document:document","typeName":"document"},{"meta":{},"id":"page:page","name":"Page 1","index":"a1","typeName":"page"},{"x":416.1875,"y":-3.296875,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:12EX79Sfb2Yry9dkq1Myl","type":"text","props":{"color":"grey","size":"l","w":116.890625,"text":"Action","font":"draw","textAlign":"start","autoSize":true,"scale":1},"parentId":"page:page","index":"a61Le","typeName":"shape"},{"x":550.1875,"y":188.796875,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:CiNsV0-CKDQPz3PRSZRIi","type":"text","props":{"color":"black","size":"m","w":157.703125,"text":"Environment","font":"draw","textAlign":"start","autoSize":true,"scale":1},"parentId":"page:page","index":"a454v","typeName":"shape"},{"x":220.65698512246945,"y":118.99999999999997,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:MgYbxZcqOoiuIiH03PQXe","type":"geo","props":{"w":181,"h":181,"geo":"ellipse","color":"blue","labelColor":"black","fill":"solid","dash":"draw","size":"m","font":"draw","text":"","align":"middle","verticalAlign":"middle","growY":0,"url":"","scale":1},"parentId":"page:page","index":"a2aXM","typeName":"shape"},{"x":393.1875,"y":391.703125,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:Nf9Qzw0uYueLQ6wK3WrXT","type":"text","props":{"color":"grey","size":"l","w":174.484375,"text":"Feedback","font":"draw","textAlign":"start","autoSize":true,"scale":1},"parentId":"page:page","index":"a74lI","typeName":"shape"},{"x":311.1875,"y":117,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:SOWT9wYpOo8jxvICexWOW","type":"arrow","props":{"dash":"draw","size":"m","fill":"none","color":"black","labelColor":"black","bend":-75.41655734332367,"start":{"x":0,"y":0},"end":{"x":319,"y":1},"arrowheadStart":"none","arrowheadEnd":"arrow","text":"","labelPosition":0.5,"font":"draw","scale":1},"parentId":"page:page","index":"a2UOI","typeName":"shape"},{"x":539.1875,"y":118.99999999999997,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:TUXSuZVtL57NGqzz1Po8N","type":"geo","props":{"w":181,"h":181,"geo":"ellipse","color":"yellow","labelColor":"black","fill":"solid","dash":"draw","size":"m","font":"draw","text":"","align":"middle","verticalAlign":"middle","growY":0,"url":"","scale":1},"parentId":"page:page","index":"a20Fr","typeName":"shape"},{"x":269.1875,"y":189.796875,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:eA8OLHVye56BKqt9l0zib","type":"text","props":{"color":"black","size":"m","w":76.703125,"text":"Agent","font":"draw","textAlign":"start","autoSize":true,"scale":1},"parentId":"page:page","index":"a32OT","typeName":"shape"},{"x":638.1875,"y":302,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:lMC9qcV97Pm8O1PhfJDFS","type":"arrow","props":{"dash":"draw","size":"m","fill":"none","color":"black","labelColor":"black","bend":-83.84456627176341,"start":{"x":0,"y":0},"end":{"x":-325,"y":2},"arrowheadStart":"none","arrowheadEnd":"arrow","text":"","labelPosition":0.5,"font":"draw","scale":1},"parentId":"page:page","index":"a51MY","typeName":"shape"},{"x":340.1875,"y":-72.703125,"rotation":0,"isLocked":false,"opacity":1,"meta":{},"id":"shape:yPmu9r3-XuKBww2b4jO1C","type":"text","props":{"color":"black","size":"xl","w":291.453125,"text":"Agentic Loop","font":"draw","textAlign":"start","autoSize":true,"scale":1},"parentId":"page:page","index":"a862z","typeName":"shape"},{"id":"pointer:pointer","typeName":"pointer","x":67.1875,"y":-69,"lastActivityTimestamp":1732833494246,"meta":{}},{"followingUserId":null,"opacityForNextShape":1,"stylesForNextShape":{},"brush":null,"scribbles":[],"cursor":{"type":"default","rotation":0},"isFocusMode":false,"exportBackground":true,"isDebugMode":false,"isToolLocked":false,"screenBounds":{"x":0,"y":0,"w":2552,"h":1295},"insets":[false,false,false,false],"zoomBrush":null,"isGridMode":false,"isPenMode":false,"chatMessage":"","isChatting":false,"highlightedUserIds":[],"isFocused":true,"devicePixelRatio":1,"isCoarsePointer":false,"isHoveringCanvas":false,"openMenus":[],"isChangingStyle":false,"isReadonly":false,"meta":{},"duplicateProps":null,"id":"instance:instance","currentPageId":"page:page","typeName":"instance"},{"editingShapeId":null,"croppingShapeId":null,"selectedShapeIds":[],"hoveredShapeId":null,"erasingShapeIds":[],"hintingShapeIds":[],"focusedGroupId":null,"meta":{},"id":"instance_page_state:page:page","pageId":"page:page","typeName":"instance_page_state"},{"x":-46.1875,"y":111,"z":1,"meta":{},"id":"camera:page:page","typeName":"camera"}]}

docusaurus.config.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ const config: Config = {
5151
},
5252
blog: {
5353
showReadingTime: true,
54-
// Please change this to your repo.
55-
// Remove this to remove the "edit this page" links.
54+
blogSidebarTitle: 'All posts',
55+
blogSidebarCount: 'ALL',
5656
},
5757
theme: {
5858
customCss: './src/css/custom.css',

0 commit comments

Comments
 (0)