Skip to content

Commit 0ce0198

Browse files
committed
updated graph ui
1 parent 31b43ba commit 0ce0198

File tree

80 files changed

+3441
-13180
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+3441
-13180
lines changed

.idea/toolchain.iml

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.python-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.11.9

README.md

+27-44
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,11 @@ https://github.com/ThousandBirdsInc/chidori/assets/515757/6b088f7d-d8f7-4c7e-900
1313
<a href="https://crates.io/crates/chidori"><img alt="Cargo.io download" src="https://img.shields.io/crates/v/chidori" /></a>
1414
<a href="https://github.com/ThousandBirdsInc/chidori/blob/main/LICENSE"><img alt="Github License" src="https://img.shields.io/badge/License-MIT-green.svg" /></a>
1515
</p>
16-
1716
<br />
18-
19-
20-
21-
22-
2317
</div>
2418

2519
Star us on Github! Join us on [Discord](https://discord.gg/CJwKsPSgew).
2620

27-
Check out [high level docs ](https://docs.thousandbirds.ai/3fe20a82965148c7a0b480f7daf0aff6)
28-
2921
## Contents
3022
- [📖 Chidori](#-chidori)
3123
- [⚡️ Getting Started](#️-getting-started)
@@ -56,7 +48,8 @@ Chidori is an open-source environment for building AI agents.
5648
You author code like you typically would with python or javascript, and we provide a layer for interfacing
5749
with the complexities of AI models in long-running workflows.
5850

59-
It is currently in alpha, and is not yet ready for production use. We are continuing to make significant changes in response to feedback.
51+
We are continuing to make significant changes in response to feedback and iterating on different features.
52+
Feedback is greatly appreciated! Please add to our issue tracker.
6053

6154
- Built from the ground up for constructing agents
6255
- Runtime written in Rust supporting Python and Node.js out of the box
@@ -66,45 +59,54 @@ It is currently in alpha, and is not yet ready for production use. We are contin
6659
- Embedded code interpreter
6760
- Time travel debugging
6861

62+
I want to demonstrate a workflow where entirely arbitrary code can be used to build useful agents.
63+
Users should be able to leverage the entire surface areas of the langauges agents are defined within. My aspiration
64+
is that Chidori can be the best way to build agentic software.
65+
66+
6967
## ⚡️ Getting Started
7068

7169
### Installation
72-
Chidori is available on [crates.io](https://crates.io/crates/chidori) and can be installed using cargo.
70+
Chidori is available on [crates.io](https://crates.io/crates/chidori) and can be installed using cargo. Our expected entrypoint for
71+
prototype development is `chidori-debugger` which wraps our runtime in a useful visual interface.
7372

7473
```bash
75-
cargo install chidori-core
74+
xcode-select --install
75+
brew install cmake
76+
brew install protobuf # needed for denokv-proto?, we don't explicitly need this
77+
brew install libiconv # not entirely sure why this is necessary WIP, I'll hunt this down
78+
brew install [email protected]
79+
cargo install chidori-debugger
7680
```
7781

82+
If you would prefer a different python interpreter you can set PYO3_PYTHON=python3.12 (or whichever version > 3.7) during
83+
your installation to change which is linked against.
84+
7885

7986
### Environment Variables
80-
You will need to set the following environment variables if you depend on nodes that
81-
require them.
87+
Chidori's interactions with LLMs default to http://localhost:4000 to hook into LiteLLM's proxy.
88+
If you'd like to leverage gpt-3.5-turbo the included config file will support that.
8289
```bash
8390
OPENAI_API_KEY=...
91+
litellm --config ./litellm_config.yaml
92+
rye sync
8493
```
8594

8695
## Examples
8796

88-
The following examples show how to build a simple agent that fetches the top stories from Hacker News and call the OpenAI API to filter to AI related launches and then format that data into markdown.
97+
The following example shows how to build a simple agent that fetches the top stories from Hacker News and call the OpenAI API to filter to AI related launches and then format that data into markdown.
8998

9099
------
91100

92101
### Beginning here is an example executable Chidori agent:
93102

94103
Chidori agents can be a single file, or a collection of files structured as a typical Typescript or Python project.
95-
The following example is a single file agent.
104+
The following example is a single file agent. Consider this similar to something like a jupyter/iPython notebook
105+
represented as a markdown file.
96106

97107
```javascript (load_hacker_news)
98108
const axios = require('https://deno.land/x/axiod/mod.ts');
99109

100-
class Story {
101-
constructor(title, url, score) {
102-
this.title = title;
103-
this.url = url;
104-
this.score = score;
105-
}
106-
}
107-
108110
const HN_URL_TOP_STORIES = "https://hacker-news.firebaseio.com/v0/topstories.json";
109111

110112
function fetchStory(id) {
@@ -121,7 +123,7 @@ async function fetchHN() {
121123
.then(stories => {
122124
return stories.map(story => {
123125
const { title, url, score } = story;
124-
return new Story(title, url, score);
126+
return {title, url, score};
125127
});
126128
});
127129
}
@@ -149,7 +151,7 @@ format_and_rank(articles=articles)
149151
------
150152

151153

152-
## 🤔 About
154+
## About
153155

154156
### Reactive Runtime
155157
At its core, Chidori brings a reactive runtime that orchestrates interactions between different agents and their components. The runtime is comprised of "nodes", which react to system changes they subscribe to, providing dynamic and responsive behavior in your AI systems.
@@ -187,25 +189,6 @@ Chidori comes with first-class support for code interpreter environments like [D
187189
This is an early open source release and we're looking for collaborators from the community.
188190
A good place to start would be to join our [discord](https://discord.gg/CJwKsPSgew)!
189191

190-
## FAQ
191-
192-
### Why Another AI Framework?
193-
Chidori focuses on the specifics of how LLM+code execution operates rather than providing specific compositions of prompts. Other frameworks haven’t focused on this space, and it's an important one. We reduce accidental complexity in building systems for long-running agents; this helps developers build successful systems.
194-
195-
### Why Chidori?
196-
Chidori is the name of the lightning blade technique used by Kakashi in the Naruto anime series.
197-
It also happens to [mean Thousand Birds in Japanese](https://en.wikipedia.org/wiki/Chidori), which is a nice coincidence.
198-
199-
### Well then why Thousand Birds?
200-
Thousand Birds is a reference to flocks of birds (or a murmuration) and the emergent behavior that arises from their interactions.
201-
We think this is a good metaphor for the behavior of long running agents, the internal units of LLM execution within them, and the emergent behavior that arises from their interactions.
202-
203-
### Why Rust?
204-
Rust is a great language for building systems, we like the type system and the guarantees provided by it.
205-
We also like the performance characteristics of Rust, and the ability to build a single binary that can be deployed anywhere.
206-
The Rust ecosystem makes it fairly easy to provide bindings to other languages, which is important for us to provide a good developer experience.
207-
208-
209192
## Inspiration
210193
Our framework is inspired by the work of many others, including:
211194
* [Temporal.io](https://temporal.io) - providing reliability and durability to workflows

examples/docker-compose.yml

-8
This file was deleted.

examples/nodejs/top-ai-launches-hn/.dockerignore

-1
This file was deleted.

examples/nodejs/top-ai-launches-hn/Dockerfile

-21
This file was deleted.

examples/nodejs/top-ai-launches-hn/index.js

-101
This file was deleted.

0 commit comments

Comments
 (0)