Introdução geral
O Kheish é um agente de código aberto com várias funções, projetado para tarefas de modelagem de grandes linguagens (LLM) que exigem colaboração estruturada e passo a passo. O Kheish é mais do que um simples coordenador, é um agente inteligente por si só, solicitando módulos sob demanda, integrando o feedback do usuário, alternando entre diferentes funções profissionais (por exemplo, proponente, revisor, validador, formatador etc.) e, por fim, fornecendo resultados refinados. e, por fim, fornecer resultados refinados. Ao utilizar vários "subagentes" (funções) em uma única estrutura, o Kheish é capaz de lidar com tarefas como auditorias de segurança, pesquisas de documentos, exploração baseada em RAG e muito mais.
Lista de funções
- Troca de função adaptativaKheish: atua como um único agente com várias funções internas, como proponente, revisor, validador e formatador.
- Solicitação de módulo sob demandaKheish pode invocar espontaneamente módulos como sistemas de arquivos, comandos de shell, RAG, SSH e módulos de memória.
- Feedback e iteraçãoKheish verifica e revisa suas propostas em muitos trabalhos, melhorando gradualmente a qualidade das soluções.
- Geração de aumento de recuperação (RAG)Para grandes bases de código ou contextos de vários arquivos, o Kheish indexa os dados no armazenamento vetorial, reduzindo o uso de tokens e o dimensionamento para projetos maiores.
- Agente único, multitarefaKheish pode lidar com tarefas paralelas ou seriais, definindo configurações YAML individuais ou combinando-as em um cenário de várias etapas.
Usando a Ajuda
Processo de instalação
- armazém de clonesPrimeiro, clone o repositório GitHub de Kheish usando o Git.
git clone https://github.com/graniet/kheish.git
- Acesso ao catálogoDigite o diretório clonado do Kheish.
cd kheish
- Instalação de dependênciasUse o Cargo para instalar as dependências necessárias.
construção de carga
Diretrizes para uso
- arquivo de configuraçãoAntes de usar o Kheish, você precisa configurar um arquivo YAML para definir tarefas e funções. O exemplo de arquivo de configuração é mostrado abaixo:
tarefas. - nome: "Auditoria de código" tarefas: nome: "Auditoria de código - proponente - revisor - validador módulos: fs - fs - fs
- Execução de tarefasExecute o Kheish usando o arquivo de configuração.
cargo run -- --config path/to/config.yaml
- chamada de móduloKheish: O Kheish pode invocar espontaneamente módulos como sistema de arquivos (fs), comandos do shell (sh), RAG (rag), SSH (ssh) e memórias de longo prazo (memories) com base nos requisitos da tarefa.
- Feedback e iteraçãoDurante o curso da tarefa, Kheish verifica e revisa constantemente sua proposta para garantir a precisão e a integridade do resultado final.
Função Fluxo de operação
- Troca de função adaptativa::
- ProponenteGerar ou atualizar ofertas com base na entrada e no contexto do usuário.
- RevisorAvaliação crítica de propostas, identificação de deficiências ou solicitação de melhorias.
- ValidadorServir como guardião final para garantir a exatidão e a integridade da proposta.
- FormatadorConverta a solução validada no formato de apresentação final (por exemplo, Markdown).
- Solicitação de módulo sob demanda::
- Sistema de arquivos (fs): lê os arquivos bloco a bloco e os indexa no RAG.
- Comandos do shell (sh): executa um número limitado de comandos do shell em um ambiente de sandbox.
- RAG: armazenamento e recuperação de grandes quantidades de texto por meio de incorporação, com suporte a consultas baseadas em blocos.
- SSH: comando remoto seguro.
- Módulos de memória (memórias): armazenam ou recuperam dados fora do contexto da LLM (memória de longo prazo).
- Feedback e iteração::
- O patrocinador propõe uma solução.
- Os revisores fazem críticas e podem solicitar alterações.
- Os proponentes fazem melhorias com base no feedback.
- O validador acaba aprovando ou solicitando alterações adicionais.
- Geração de aumento de recuperação (RAG)::
- Para grandes bases de código ou contextos de vários arquivos, o Kheish indexa os dados em um armazenamento vetorial e, posteriormente, recupera as partes relevantes por meio de consultas semânticas.
- Agente único, multitarefa::
- O Kheish pode lidar com tarefas paralelas ou em série, definindo configurações YAML individuais ou combinando-as em um cenário de várias etapas.