Estrela -nos no github! Junte -se a nós na discórdia.
Chidori é um orquestrador de código aberto, tempo de execução e IDE para a criação de software em simbiose com ferramentas de IA modernas. É especialmente atendido para a construção de agentes de IA, fornecendo soluções para os seguintes problemas:
Ao usar o Chidori, seu código de autor com Python ou JavaScript, fornecemos uma camada para interface com as complexidades dos modelos de IA em fluxos de trabalho de longa duração. Evitamos a necessidade de declarar um novo idioma ou SDK para fornecer esses recursos para que você possa aproveitar os padrões de software com os quais já está familiarizado.
Características:
Chidori está disponível no Crates.io e pode ser instalado usando carga. Nosso ponto de entrada esperado para o desenvolvimento de protótipos é chidori-debugger
, que envolve nosso tempo de execução em uma interface visual útil.
# Install the rust toolchain and the nightly channel
curl --proto ' =https ' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup toolchain install nightly
# Required for building dependencies
xcode-select --install
# These dependencies are necessary for a successful build
brew install cmake
# We are investigating if this is necessary or can be removed
brew install [email protected]
# Chidori uses uv for handling python dependencies
brew install uv
# We depend on features only supported by nightly at the moment
cargo +nightly install chidori-debugger --locked
Se você preferir usar um intérprete Python diferente, você pode definir Pyo3_Python = Python3.12 (ou qualquer versão> 3.7) durante sua instalação para alterar, que está vinculado.
As interações de Chidori com o LLMS padrão para http: // localhost: 4000 para conectar -se ao proxy de Litellm. Se você deseja aproveitar o GPT-3.5-Turbo, o arquivo de configuração incluído apoiará isso. Você precisará instalar pip install litellm[proxy]
para executar o abaixo:
export OPENAI_API_KEY=...
uv pip install " litellm[proxy] "
uv run litellm --config ./litellm_config.yaml
O exemplo a seguir mostra como criar um agente simples que busca as principais histórias do Hacker News e chama a API do OpenAI para filtrar para lançamentos relacionados à IA e, em seguida, formate esses dados em Markdown.
Os agentes Chidori podem ser um único arquivo ou uma coleção de arquivos estruturados como um projeto típico de texto ou python. O exemplo a seguir é um único agente de arquivo. Considere isso semelhante a algo como um notebook Jupyter/Ipython representado como um arquivo de marcação.
`` `javascript (load_hacker_news) const axios = requer ('https://deno.land/x/axiod/mod.ts'); const hn_url_top_stories = "https://hacker-news.firebaseio.com/v0/topstories.json"; função fetchstory (id) { Return axios.get (`https://hacker-news.firebaseio.com/v0/item/$ {id} .json? print = better`) .Then (Response => Response.Data); } função assíncrona fetchhn () { const stories = aguarda axios.get (hn_url_top_stories); const storyIds = stories.data; // Apenas os primeiros 30 const tarefas = storyIds.slice (0, 30) .map (id => fetchstory (id)); Return Promise.All (tarefas) .Then (Stories => { Return Stories.map (Story => { const {title, url, score} = story; return {title, url, pontuação}; }); }); } `` ` Prompt "Interpret_the_group" `` `prompt (interpret_the_group) Com base na lista a seguir de threads hackernews, filtrar esta lista para apenas lançamentos de Novos projetos de IA: {{fetched_articles}} `` ` Prompt "format_and_rank" `` `prompt (format_and_rank) Formatar esta lista de novos projetos de IA em Markdown, classificando mais Projetos interessantes do mais interessante ao menos. {{interpret_the_group}} `` ` Usando uma célula Python como nosso ponto de entrada, demonstrando execução entre idiomas: `` `Python Artigos = Aguarda Fetchhn () format_and_rank (artigos = artigos) `` `
Na sua essência, Chidori traz um tempo de execução reativo que orquestra interações entre diferentes agentes e seus componentes. Chidori aceita código arbitrário de python ou javascript, assumindo a intermediação e execução dele para permitir interrupções e reatividade. Isso permite que você obtenha os benefícios desses comportamentos de tempo de execução e aproveite os padrões que você já está familiarizado.
Chidori garante monitoramento e observabilidade abrangentes de seus agentes. Registramos todas as entradas e saídas emitidos por funções durante toda a execução do seu agente, permitindo -nos explicar com precisão o que levou ao que, aprimorando sua experiência de depuração e compreensão do comportamento de produção do sistema.
Com o Chidori, você pode tirar instantâneos do seu sistema e explorar diferentes resultados possíveis a partir desse ponto (ramificação) ou rebobinar o sistema para um estado anterior (viagem de tempo). Essa funcionalidade melhora o manuseio de erros, a depuração e a robustez do sistema, oferecendo caminhos e doenças alternativas.
Chidori vem com suporte de primeira classe para interpretação de código para Python e JavaScript. Você pode executar o código diretamente dentro do seu sistema, fornecendo inicialização rápida, facilidade de uso e execução segura. Estamos trabalhando continuamente em salvaguardas adicionais contra o código não confiável, com o suporte ao ambiente em breve.
Com nosso gráfico de execução, a preservação do estado e as ferramentas para depuração - Chidori é um ambiente excepcional para gerar código durante a avaliação do seu agente. Você pode usar isso para aproveitar o LLMS para alcançar um comportamento mais generalizado e evoluir seus agentes ao longo do tempo.
Este é um lançamento precoce de código aberto e estamos procurando colaboradores da comunidade. Um bom lugar para começar seria se juntar à nossa discórdia!
Nossa estrutura é inspirada no trabalho de muitos outros, incluindo:
Chidori está sob a licença do MIT. Veja a licença para obter mais informações.
Por favor, estrela o repositório do Github e junte -se à nossa discórdia!