O mundo dos agentes GenAI é fragmentado, com estruturas como LangGraph, AWS Bedrock e Semantic Kernel, cada uma operando em seus próprios silos. Esta falta de interoperabilidade cria obstáculos para desenvolvedores e empresas que precisam integrar agentes em diferentes plataformas, APIs ou sistemas legados.
AgenticDB surge como a solução para unificar esse cenário disperso. É um banco de dados projetado especificamente para armazenar e gerenciar manifestos de agentes e aplicativos GenAI. Com o AgenticDB, você pode adicionar, pesquisar, invocar e avaliar agentes sem esforço, tudo a partir de um repositório centralizado. Recursos avançados como gerenciamento de agentes baseados em Docker e execução remota expandem sua versatilidade, tornando-o adaptável a uma ampla variedade de fluxos de trabalho GenAI.
Ao simplificar a forma como lidamos com os agentes, o AgenticDB não apenas economiza tempo, mas também promove a inovação, tornando mais fácil encontrar e utilizar o agente certo para qualquer tarefa. É a ponte que conecta estruturas distintas, permitindo uma colaboração perfeita e acelerando o progresso no ecossistema GenAI.
Com AgenticDB , você pode:
Para iniciar o servidor AgenticDB localmente, execute o seguinte comando:
python server.py
A API estará disponível em http://127.0.0.1:8000
.
Aqui está uma versão atualizada da seção Excluir todas as coleções no README, refletindo o formato de resposta JSON real do código Python fornecido.
Você pode adicionar um agente ao banco de dados usando o seguinte comando curl
. Este exemplo envia uma solicitação JSON para adicionar um novo agente chamado code-gen-chart-agent
.
curl -X POST " http://127.0.0.1:8000/agents "
-H " Content-Type: application/json "
-H " Accept: application/json "
-d ' [
{
"metadata": {
"name": "code-gen-chart-agent",
"namespace": "agents",
"description": "Requests for a javascript code generator to plot a chart with supplied free-form data."
},
"spec": {
"type": "agent",
"lifecycle": "dev",
"owner": "[email protected]",
"access_level": "Public",
"category": "Travel Agent",
"url": "https://api.example.com/code-gen-chart-agent/agent",
"parameters": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The request message for the chart code generator agent."
},
"thread": {
"type": "string",
"description": "The id to separate parallel message threads."
}
},
"required": ["message", "thread"],
"additionalProperties": false
},
"output": {
"type": "string",
"description": "The result of the request, including any generated image location."
}
}
}
] '
Isso adicionará o manifesto do agente ao AgenticDB, disponibilizando-o para pesquisas e invocações futuras.
Para procurar agentes com base em uma consulta de linguagem natural, use o comando curl
a seguir. Este exemplo procura agentes relacionados a "Linguagem Natural".
curl -G " http://127.0.0.1:8000/agents "
-H " Accept: application/json "
--data-urlencode " query=Which agents can book travel? "
O AgenticDB realizará uma pesquisa por similaridade e retornará uma lista de agentes correspondentes com base na consulta.
Você também pode adicionar um aplicativo agentic ao AgenticDB usando um comando curl
semelhante. Aqui está um exemplo para adicionar um “aplicativo de gráficos de preços de ações” que rastreia os preços das ações e gera gráficos.
curl -X POST " http://127.0.0.1:8000/applications "
-H " Content-Type: application/json "
-H " Accept: application/json "
-d ' [
{
"metadata": {
"name": "Stock Price Charting Application",
"namespace": "production",
"description": "Provides access to daily open, high, low, close stock prices over time and the ability to generate charts for the requested data"
},
"spec": {
"type": "application",
"lifecycle": "dev",
"owner": "[email protected]",
"access_level": "PUBLIC",
"category": "Finance",
"setup": {
"compose": {
"compose_url": "https://ipfs.filebase.io/ipfs/somehash",
"run_command": "gunzip docker-compose.yml.gz && docker compose -f ./docker-compose.yml up -d"
}
},
"url": "http://localhost:3000/agent",
"method": "POST",
"example": "http://localhost:3000/agent ' Content-Type ' : ' application/json ' { ' input ' : ' what was the Nvidia close price on August 22nd 2024 ' , ' thread ' : ' nvidia ' }",
"parameters": {
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "natural language request for stock price data and charting of the data as required"
},
"thread": {
"type": "string",
"description": "thread context id for the request"
}
},
"required": ["input"],
"additionalProperties": false
},
"output": {
"type": "object",
"properties": {
"content": {
"type": "string",
"description": "the natural language response and the Final Answer to the request with a chart location if requested"
}
},
"description": "the answer to the request"
}
}
}
] '
Você pode excluir todas as coleções de agentes, aplicativos e classificações do AgenticDB com uma única solicitação DELETE
. Esta operação tentará remover as coleções armazenadas: agents
, applications
e ratings
. Cada exclusão de coleção é tratada separadamente e os resultados refletirão se cada coleção foi excluída com êxito.
curl -X DELETE " http://127.0.0.1:8000/collections "
A resposta fornecerá o status de cada tentativa de exclusão na forma de um objeto JSON. Se uma coleção for excluída com sucesso, o valor será 0
. Se houve um erro, o valor conterá a mensagem de erro correspondente.
{
"agents" : 0 ,
"applications" : 0 ,
"ratings" : " Failed to delete ratings collection: some_error_message "
}
0
indica que a coleção agents
foi excluída com sucesso.0
indica que a coleção applications
foi excluída com sucesso."some_error_message"
pelo erro real encontrado). Depois de interagir com um agente, você pode enviar uma classificação para o agente usando este comando curl
. Substitua placeholder_agent_id
e placeholder_some_id
pelos IDs reais do agente e da classificação.
curl -X POST " http://127.0.0.1:8000/ratings "
-H " Content-Type: application/json "
-d ' {
"ratings": {
"agent_id": "placeholder_agent_id",
"id": "placeholder_some_id",
"data": {
"score": 4
}
}
} '
Você pode recuperar classificações do agente usando este comando curl
. Substitua <ratings_id>
pelo ID de classificação real.
curl -X GET " http://127.0.0.1:8000/ratings?ratings_id=<ratings_id> "
O AgenticDB retornará a pontuação e o feedback associados ao ID de classificação fornecido.