O Cogency é uma ferramenta de arquitetura cognitiva de código aberto, hospedada no GitHub, projetada para ajudar os desenvolvedores a criar agentes de IA eficientes. Ele permite o processamento de tarefas em várias etapas por meio de loops ReAct transparentes (Reason, Act, Observe, Generate), com suporte para saída de streaming em tempo real e operações rastreáveis. O Cogency oferece integração flexível com ferramentas como pesquisa na Web, previsão do tempo e planejamento de itinerários, o que o torna adequado para o desenvolvimento de aplicativos de automação inteligente. Os usuários podem personalizar a personalidade, o tom e o estilo do agente, por exemplo, criando um assistente de IA no estilo de um "pirata amigável" ou de um "professor paciente". Com suporte para vários modelos de linguagem e um back-end incorporado, o projeto é fácil de instalar e os desenvolvedores podem começar a trabalhar rapidamente, e o Cogency foi projetado para ser modular e extensível, atendendo às necessidades de desenvolvimento, desde tarefas simples até fluxos de trabalho complexos.
Lista de funções
- raciocínio em várias etapasDecompor tarefas complexas por meio do ciclo ReAct (Reasoning, Acting, Observing, Generating) e gerar resultados passo a passo.
- integração de ferramentasSuporte a ferramentas como pesquisa na Web, previsões do tempo, informações sobre viagens etc. Os desenvolvedores podem personalizar as ferramentas para ampliar a funcionalidade.
- Saída de streaming em tempo realCada etapa da operação é exibida em tempo real para facilitar a depuração e o rastreamento.
- Agentes personalizadosSuporte para definir a personalidade, o tom e o estilo do agente, como "pirata amigável" ou "professor encorajador".
- Suporte a modelos em vários idiomasCompatível com uma variedade de modelos de linguagem convencionais e back-end incorporado, adaptação flexível a diferentes necessidades de desenvolvimento.
- Design modularArquitetura extensível: oferece uma arquitetura facilmente extensível, na qual os desenvolvedores podem adicionar rapidamente novas ferramentas ou recursos.
- operação assíncronaProgramação assíncrona: suporta programação assíncrona e é adequado para lidar com tarefas altamente simultâneas.
Usando a Ajuda
Processo de instalação
Para usar o Cogency, os desenvolvedores precisam primeiro instalar o ambiente Python (recomenda-se o Python 3.8 ou superior). Veja a seguir as etapas detalhadas de instalação:
- Clonagem do código do projeto::
Execute o seguinte comando em um terminal para clonar o repositório do Cogency localmente:git clone https://github.com/iteebz/cogency.git cd cogency
- Instalação de dependências::
Use o pip para instalar o pacote principal do Cogency:pip install cogency
Se você precisar oferecer suporte a todos os modelos de linguagem, back-ends incorporados e ferramentas, execute:
pip install cogency[all]
- Configuração de chaves de API::
A Cogency oferece suporte a vários modelos de linguagem (por exemplo, OpenAI). Você precisa configurar a chave de API, criar.env
e adicione a chave:echo "OPENAI_API_KEY=sk-..." >> .env
intercambialidade
sk-...
para sua chave de API real. Há suporte para chaves de outros provedores; consulte a documentação oficial para obter detalhes. - Verificar a instalação::
Execute o código a seguir para testar se a instalação foi bem-sucedida:import asyncio from cogency import Agent async def main(): agent = Agent("assistant") async for chunk in agent.stream("What is 25 * 43?"): print(chunk, end="", flush=True) asyncio.run(main())
Se a saída
1075
indicando que a instalação foi bem-sucedida.
Função Fluxo de operação
O núcleo do Cogency é o processamento inteligente de tarefas por meio de loops ReAct. Veja a seguir como usar os principais recursos:
Criação e uso de agentes de IA
- Inicialização de um proxy::
Criar um agente básico:from cogency import Agent agent = Agent("assistant")
Isso pode ser feito definindo o
personality
etone
responder cantandostyle
para personalizar o agente. Por exemplo, criar um agente "pirata amigável":pirate = Agent("pirate", personality="friendly pirate who loves coding")
- Execução de tarefas::
fazer uso destream
executa a tarefa e gera resultados de streaming em tempo real. Por exemplo, consultar um problema de matemática:async for chunk in agent.stream("What is 25 * 43?"): print(chunk, end="", flush=True)
saídas
1075
. Para tarefas complexas, como planejamento de viagens:async for chunk in agent.stream("Plan a 3-day trip to Tokyo"): print(chunk, end="", flush=True)
O agente chamará automaticamente as ferramentas (por exemplo, previsões do tempo, informações de viagem) para gerar um itinerário detalhado.
integração de ferramentas
O Cogency oferece suporte a ferramentas integradas, como web_search
eweather_forecast
) e ferramentas personalizadas. Veja a seguir as etapas para adicionar uma ferramenta personalizada:
- Ferramentas de definição::
Crie uma ferramenta personalizada, como uma que obtenha a hora da cidade doTimezoneTool
::from cogency import Agent, BaseTool class TimezoneTool(BaseTool): def __init__(self): super().__init__("timezone", "Get time in any city") async def run(self, city: str): return {"time": f"Current time in {city}: 14:30 PST"} def get_schema(self): return "timezone(city='string')"
- Ferramentas de registro::
Registre a ferramenta no agente:agent = Agent("time_assistant", tools=[TimezoneTool()]) async for chunk in agent.stream("What's the time in London?"): print(chunk, end="", flush=True)
saídas
Current time in London: 14:30 PST
.
Configurações de proxy personalizadas
A Cogency permite que você defina uma personalidade para o agente. Por exemplo, criar um agente no estilo "professor paciente":
teacher = Agent("teacher", personality="patient teacher", tone="encouraging", style="conversational")
async for chunk in teacher.stream("Explain quantum computing"):
print(chunk, end="", flush=True)
O resultado explicará a computação quântica em um tom encorajador e estilo coloquial.
Depuração e rastreamento
Cada etapa da operação do Cogency é rastreável. Ao executar uma tarefa, o log registra cada etapa de raciocínio, ação e observação. Por exemplo, ao executar uma tarefa de planejamento de viagem, o log pode mostrar:
- inferênciaInformações meteorológicas são necessárias para planejar as atividades.
- ato: Chamada
weather_forecast("Tokyo 3 days")
. - prestar atençãoDados meteorológicos: Obtenha dados meteorológicos (ensolarado, chuvoso, etc.).
- gerandoGerar viagens com base em dados meteorológicos.
Os desenvolvedores podem depurar o comportamento do agente por meio de registros para garantir que as tarefas sejam executadas sob demanda.
advertência
- Certifique-se de que sua conexão com a Internet esteja estável, pois algumas ferramentas (por exemplo, pesquisa na Web) exigem acesso à Internet.
- sonda
.env
A chave de API no arquivo está configurada corretamente. - A programação assíncrona requer a função
asyncio
Suporte, recomenda-se familiaridade com a sintaxe assíncrona. - A documentação oficial (localizada no repositório do GitHub para o
README.md
) fornece mais exemplos e uso avançado.
cenário do aplicativo
- Processamento automatizado de tarefas
A Cogency se presta ao desenvolvimento de fluxos de trabalho automatizados. Por exemplo, as plataformas de comércio eletrônico podem usar os agentes da Cogency para automatizar as respostas às consultas dos clientes, combinadas com ferramentas de pesquisa na Web para encontrar informações sobre produtos. - Planejamento de viagens
Os usuários podem digitar "Plan a three-day trip to Tokyo" (Planejar uma viagem de três dias para Tóquio) e a Cogency consultará automaticamente as previsões do tempo e as ferramentas de informações de viagem para gerar itinerários adequados ao clima. - Auxílios educacionais
Agentes no estilo de professores podem ser usados para explicar conceitos complexos, como computação quântica ou fundamentos de programação, e são adequados para plataformas de educação on-line ou aprendizado individual. - Extensão de ferramentas de desenvolvimento
Os desenvolvedores podem adicionar ferramentas personalizadas ao Cogency, como consulta a banco de dados ou gerenciamento de arquivos, para ampliar sua funcionalidade em aplicativos de classe empresarial.
QA
- Quais modelos de idiomas são compatíveis com o Cogency?
A Cogency oferece suporte a muitos modelos de linguagem convencionais, como a série GPT da OpenAI. Consulte a documentação oficial para obter a lista de suporte. Os usuários devem fornecer a chave de API correspondente. - Como faço para depurar o comportamento de um agente?
O loop ReAct da Cogency registra cada etapa, permitindo que os desenvolvedores vejam detalhes de raciocínio, ações e observações para localizar problemas. - É necessário ter experiência em programação?
O uso básico requer conhecimento de programação Python, especialmente de programação assíncrona. Quem não é desenvolvedor pode consultar o código de amostra para começar rapidamente. - Ele pode ser usado off-line?
Alguns recursos (por exemplo, tarefas de computação local) são compatíveis com o uso off-line, mas ferramentas como a pesquisa na Web exigem uma conexão com a Internet.