Merge 78dc3f59ec into 96096ea0ff
This commit is contained in:
commit
57ecb89548
|
|
@ -0,0 +1,203 @@
|
|||
<div align="center">
|
||||
|
||||
<img src="./static/image/MiroFish_logo_compressed.jpeg" alt="MiroFish Logo" width="75%"/>
|
||||
|
||||
<a href="https://trendshift.io/repositories/16144" target="_blank"><img src="https://trendshift.io/api/badge/repositories/16144" alt="666ghj%2FMiroFish | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
|
||||
|
||||
简洁通用的群体智能引擎,预测万物
|
||||
</br>
|
||||
<em>Um Motor de Inteligência de Enxame Simples e Universal, Preveja Qualquer Coisa</em>
|
||||
|
||||
<a href="https://www.shanda.com/" target="_blank"><img src="./static/image/shanda_logo.png" alt="666ghj%2MiroFish | Shanda" height="40"/></a>
|
||||
|
||||
[](https://github.com/666ghj/MiroFish/stargazers)
|
||||
[](https://github.com/666ghj/MiroFish/watchers)
|
||||
[](https://github.com/666ghj/MiroFish/network)
|
||||
[](https://hub.docker.com/)
|
||||
[](https://deepwiki.com/666ghj/MiroFish)
|
||||
|
||||
[](http://discord.gg/ePf5aPaHnA)
|
||||
[](https://x.com/mirofish_ai)
|
||||
[](https://www.instagram.com/mirofish_ai/)
|
||||
|
||||
[English](./README.md) | [中文文档](./README-ZH.md) | [Português (Brasil)](./README-PT-BR.md) | [Português (Portugal)](./README-PT-PT.md)
|
||||
|
||||
</div>
|
||||
|
||||
## ⚡ Visão Geral
|
||||
|
||||
O **MiroFish** é um motor de previsão de IA de nova geração impulsionado por tecnologia multiagente. Ao extrair informações-semente do mundo real (como notícias de última hora, rascunhos de políticas ou sinais financeiros), ele constrói automaticamente um mundo digital paralelo de alta fidelidade. Dentro desse espaço, milhares de agentes inteligentes com personalidades independentes, memória de longo prazo e lógica comportamental interagem livremente e passam por uma evolução social. Você pode injetar variáveis dinamicamente com uma "visão divina" para deduzir trajetórias futuras com precisão — **ensaie o futuro em um sandbox digital e vença decisões após inúmeras simulações**.
|
||||
|
||||
> Você só precisa: enviar materiais-semente (relatórios de análise de dados ou histórias interessantes) e descrever seus requisitos de previsão em linguagem natural</br>
|
||||
> O MiroFish retornará: um relatório de previsão detalhado e um mundo digital interativo de alta fidelidade
|
||||
|
||||
### Nossa Visão
|
||||
|
||||
O MiroFish é dedicado a criar um espelho de inteligência de enxame que mapeia a realidade. Ao capturar a emergência coletiva desencadeada por interações individuais, rompemos as limitações da previsão tradicional:
|
||||
|
||||
- **No Nível Macro**: somos um laboratório de ensaio para tomadores de decisão, permitindo que políticas e relações públicas sejam testadas sem risco
|
||||
- **No Nível Micro**: somos um sandbox criativo para usuários individuais — seja deduzindo finais de romances ou explorando cenários imaginativos, tudo pode ser divertido, lúdico e acessível
|
||||
|
||||
Da previsão séria à simulação lúdica, deixamos que cada "e se" veja seu desfecho, tornando possível prever qualquer coisa.
|
||||
|
||||
## 🌐 Demonstração Ao Vivo
|
||||
|
||||
Visite nosso ambiente de demonstração online e experimente uma simulação de previsão sobre um evento de opinião pública em alta que preparamos para você: [mirofish-live-demo](https://666ghj.github.io/mirofish-demo/)
|
||||
|
||||
## 📸 Capturas de Tela
|
||||
|
||||
<div align="center">
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图1.png" alt="Captura 1" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图2.png" alt="Captura 2" width="100%"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图3.png" alt="Captura 3" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图4.png" alt="Captura 4" width="100%"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图5.png" alt="Captura 5" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图6.png" alt="Captura 6" width="100%"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
## 🎬 Vídeos de Demonstração
|
||||
|
||||
### 1. Simulação de Opinião Pública da Universidade de Wuhan + Introdução ao Projeto MiroFish
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.bilibili.com/video/BV1VYBsBHEMY/" target="_blank"><img src="./static/image/武大模拟演示封面.png" alt="Vídeo de Demonstração MiroFish" width="75%"/></a>
|
||||
|
||||
Clique na imagem para assistir ao vídeo de demonstração completo da previsão usando o "Relatório de Opinião Pública da Universidade de Wuhan" gerado pelo BettaFish
|
||||
</div>
|
||||
|
||||
### 2. Simulação do Final Perdido de "Sonho da Câmara Vermelha"
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.bilibili.com/video/BV1cPk3BBExq" target="_blank"><img src="./static/image/红楼梦模拟推演封面.jpg" alt="Vídeo de Demonstração MiroFish" width="75%"/></a>
|
||||
|
||||
Clique na imagem para assistir à previsão profunda do MiroFish sobre o final perdido, baseada em centenas de milhares de palavras dos 80 primeiros capítulos de "Sonho da Câmara Vermelha"
|
||||
</div>
|
||||
|
||||
> **Previsão Financeira**, **Previsão de Notícias Políticas** e mais exemplos em breve...
|
||||
|
||||
## 🔄 Fluxo de Trabalho
|
||||
|
||||
1. **Construção do Grafo**: extração de sementes, injeção de memória individual/coletiva e construção de GraphRAG
|
||||
2. **Configuração do Ambiente**: extração de relações entre entidades, geração de personas e injeção de configuração de agentes
|
||||
3. **Simulação**: simulação paralela em duas plataformas, análise automática de requisitos de previsão e atualizações dinâmicas de memória temporal
|
||||
4. **Geração do Relatório**: ReportAgent com conjunto avançado de ferramentas para interação profunda com o ambiente pós-simulação
|
||||
5. **Interação Profunda**: converse com qualquer agente do mundo simulado e dialogue com o ReportAgent
|
||||
|
||||
## 🚀 Início Rápido
|
||||
|
||||
### Opção 1: Implantação a Partir do Código-Fonte (Recomendado)
|
||||
|
||||
#### Pré-requisitos
|
||||
|
||||
| Ferramenta | Versão | Descrição | Verificar Instalação |
|
||||
|------|---------|-------------|-------------------|
|
||||
| **Node.js** | 18+ | Runtime do frontend, inclui npm | `node -v` |
|
||||
| **Python** | ≥3.11, ≤3.12 | Runtime do backend | `python --version` |
|
||||
| **uv** | Mais recente | Gerenciador de pacotes Python | `uv --version` |
|
||||
|
||||
#### 1. Configurar Variáveis de Ambiente
|
||||
|
||||
```bash
|
||||
# Copie o arquivo de configuração de exemplo
|
||||
cp .env.example .env
|
||||
|
||||
# Edite o arquivo .env e preencha as chaves de API necessárias
|
||||
```
|
||||
|
||||
**Variáveis de Ambiente Obrigatórias:**
|
||||
|
||||
```env
|
||||
# Configuração da API do LLM (suporta qualquer API de LLM no formato do SDK da OpenAI)
|
||||
# Recomendado: modelo Alibaba Qwen-plus via Bailian Platform: https://bailian.console.aliyun.com/
|
||||
# Consumo alto, experimente primeiro simulações com menos de 40 rodadas
|
||||
LLM_API_KEY=sua_chave_api
|
||||
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
|
||||
LLM_MODEL_NAME=qwen-plus
|
||||
|
||||
# Configuração do Zep Cloud
|
||||
# A cota mensal gratuita é suficiente para uso simples: https://app.getzep.com/
|
||||
ZEP_API_KEY=sua_chave_api_zep
|
||||
```
|
||||
|
||||
#### 2. Instalar Dependências
|
||||
|
||||
```bash
|
||||
# Instalação de todas as dependências em um só comando (raiz + frontend + backend)
|
||||
npm run setup:all
|
||||
```
|
||||
|
||||
Ou instale passo a passo:
|
||||
|
||||
```bash
|
||||
# Instalar dependências Node (raiz + frontend)
|
||||
npm run setup
|
||||
|
||||
# Instalar dependências Python (backend, cria ambiente virtual automaticamente)
|
||||
npm run setup:backend
|
||||
```
|
||||
|
||||
#### 3. Iniciar os Serviços
|
||||
|
||||
```bash
|
||||
# Iniciar frontend e backend (execute a partir da raiz do projeto)
|
||||
npm run dev
|
||||
```
|
||||
|
||||
**URLs dos Serviços:**
|
||||
- Frontend: `http://localhost:3000`
|
||||
- API do Backend: `http://localhost:5001`
|
||||
|
||||
**Iniciar Individualmente:**
|
||||
|
||||
```bash
|
||||
npm run backend # Inicia apenas o backend
|
||||
npm run frontend # Inicia apenas o frontend
|
||||
```
|
||||
|
||||
### Opção 2: Implantação com Docker
|
||||
|
||||
```bash
|
||||
# 1. Configurar variáveis de ambiente (igual à implantação do código-fonte)
|
||||
cp .env.example .env
|
||||
|
||||
# 2. Baixar a imagem e iniciar
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Lê `.env` do diretório raiz por padrão e mapeia as portas `3000 (frontend) / 5001 (backend)`
|
||||
|
||||
> O endereço de espelho para download mais rápido está fornecido como comentários em `docker-compose.yml`, substitua se necessário.
|
||||
|
||||
## 📬 Participe da Conversa
|
||||
|
||||
<div align="center">
|
||||
<img src="./static/image/QQ群.png" alt="Grupo QQ" width="60%"/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
A equipe MiroFish está contratando para posições full-time/estágio. Se você tem interesse em simulação multiagente e aplicações de LLM, envie seu currículo para: **mirofish@shanda.com**
|
||||
|
||||
## 📄 Agradecimentos
|
||||
|
||||
**O MiroFish recebeu apoio estratégico e incubação do Shanda Group!**
|
||||
|
||||
O motor de simulação do MiroFish é impulsionado pelo **[OASIS (Open Agent Social Interaction Simulations)](https://github.com/camel-ai/oasis)**. Agradecemos sinceramente à equipe CAMEL-AI por suas contribuições de código aberto!
|
||||
|
||||
## 📈 Estatísticas do Projeto
|
||||
|
||||
<a href="https://www.star-history.com/#666ghj/MiroFish&type=date&legend=top-left">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&theme=dark&legend=top-left" />
|
||||
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&legend=top-left" />
|
||||
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&legend=top-left" />
|
||||
</picture>
|
||||
</a>
|
||||
|
|
@ -0,0 +1,203 @@
|
|||
<div align="center">
|
||||
|
||||
<img src="./static/image/MiroFish_logo_compressed.jpeg" alt="MiroFish Logo" width="75%"/>
|
||||
|
||||
<a href="https://trendshift.io/repositories/16144" target="_blank"><img src="https://trendshift.io/api/badge/repositories/16144" alt="666ghj%2FMiroFish | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
|
||||
|
||||
简洁通用的群体智能引擎,预测万物
|
||||
</br>
|
||||
<em>Um Motor de Inteligência de Enxame Simples e Universal, Preveja Qualquer Coisa</em>
|
||||
|
||||
<a href="https://www.shanda.com/" target="_blank"><img src="./static/image/shanda_logo.png" alt="666ghj%2MiroFish | Shanda" height="40"/></a>
|
||||
|
||||
[](https://github.com/666ghj/MiroFish/stargazers)
|
||||
[](https://github.com/666ghj/MiroFish/watchers)
|
||||
[](https://github.com/666ghj/MiroFish/network)
|
||||
[](https://hub.docker.com/)
|
||||
[](https://deepwiki.com/666ghj/MiroFish)
|
||||
|
||||
[](http://discord.gg/ePf5aPaHnA)
|
||||
[](https://x.com/mirofish_ai)
|
||||
[](https://www.instagram.com/mirofish_ai/)
|
||||
|
||||
[English](./README.md) | [中文文档](./README-ZH.md) | [Português (Brasil)](./README-PT-BR.md) | [Português (Portugal)](./README-PT-PT.md)
|
||||
|
||||
</div>
|
||||
|
||||
## ⚡ Visão Geral
|
||||
|
||||
O **MiroFish** é um motor de previsão de IA de nova geração impulsionado por tecnologia multiagente. Ao extrair informação-semente do mundo real (como notícias de última hora, esboços de políticas ou sinais financeiros), constrói automaticamente um mundo digital paralelo de alta fidelidade. Dentro desse espaço, milhares de agentes inteligentes com personalidades independentes, memória de longo prazo e lógica comportamental interagem livremente e atravessam uma evolução social. Pode injetar variáveis dinamicamente com uma "visão divina" para deduzir trajetórias futuras com precisão — **ensaie o futuro num sandbox digital e vença decisões após inúmeras simulações**.
|
||||
|
||||
> Apenas precisa de: carregar materiais-semente (relatórios de análise de dados ou histórias interessantes) e descrever os seus requisitos de previsão em linguagem natural</br>
|
||||
> O MiroFish devolverá: um relatório de previsão detalhado e um mundo digital interativo de alta fidelidade
|
||||
|
||||
### A Nossa Visão
|
||||
|
||||
O MiroFish está dedicado a criar um espelho de inteligência de enxame que mapeia a realidade. Ao capturar a emergência coletiva desencadeada por interações individuais, rompemos as limitações da previsão tradicional:
|
||||
|
||||
- **Ao Nível Macro**: somos um laboratório de ensaio para decisores, permitindo que políticas e relações públicas sejam testadas sem risco
|
||||
- **Ao Nível Micro**: somos um sandbox criativo para utilizadores individuais — seja a deduzir finais de romances ou a explorar cenários imaginativos, tudo pode ser divertido, lúdico e acessível
|
||||
|
||||
Da previsão séria à simulação lúdica, deixamos que cada "e se" veja o seu desfecho, tornando possível prever qualquer coisa.
|
||||
|
||||
## 🌐 Demonstração Ao Vivo
|
||||
|
||||
Visite o nosso ambiente de demonstração online e experimente uma simulação de previsão sobre um evento de opinião pública em destaque que preparámos para si: [mirofish-live-demo](https://666ghj.github.io/mirofish-demo/)
|
||||
|
||||
## 📸 Capturas de Ecrã
|
||||
|
||||
<div align="center">
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图1.png" alt="Captura 1" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图2.png" alt="Captura 2" width="100%"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图3.png" alt="Captura 3" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图4.png" alt="Captura 4" width="100%"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="./static/image/Screenshot/运行截图5.png" alt="Captura 5" width="100%"/></td>
|
||||
<td><img src="./static/image/Screenshot/运行截图6.png" alt="Captura 6" width="100%"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
## 🎬 Vídeos de Demonstração
|
||||
|
||||
### 1. Simulação de Opinião Pública da Universidade de Wuhan + Introdução ao Projeto MiroFish
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.bilibili.com/video/BV1VYBsBHEMY/" target="_blank"><img src="./static/image/武大模拟演示封面.png" alt="Vídeo de Demonstração MiroFish" width="75%"/></a>
|
||||
|
||||
Clique na imagem para ver o vídeo de demonstração completo da previsão utilizando o "Relatório de Opinião Pública da Universidade de Wuhan" gerado pelo BettaFish
|
||||
</div>
|
||||
|
||||
### 2. Simulação do Final Perdido de "Sonho da Câmara Vermelha"
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.bilibili.com/video/BV1cPk3BBExq" target="_blank"><img src="./static/image/红楼梦模拟推演封面.jpg" alt="Vídeo de Demonstração MiroFish" width="75%"/></a>
|
||||
|
||||
Clique na imagem para ver a previsão profunda do MiroFish sobre o final perdido, baseada em centenas de milhares de palavras dos 80 primeiros capítulos de "Sonho da Câmara Vermelha"
|
||||
</div>
|
||||
|
||||
> **Previsão Financeira**, **Previsão de Notícias Políticas** e mais exemplos em breve...
|
||||
|
||||
## 🔄 Fluxo de Trabalho
|
||||
|
||||
1. **Construção do Grafo**: extração de sementes, injeção de memória individual/coletiva e construção de GraphRAG
|
||||
2. **Configuração do Ambiente**: extração de relações entre entidades, geração de personas e injeção de configuração de agentes
|
||||
3. **Simulação**: simulação paralela em duas plataformas, análise automática de requisitos de previsão e atualizações dinâmicas de memória temporal
|
||||
4. **Geração do Relatório**: ReportAgent com conjunto avançado de ferramentas para interação profunda com o ambiente pós-simulação
|
||||
5. **Interação Profunda**: converse com qualquer agente do mundo simulado e dialogue com o ReportAgent
|
||||
|
||||
## 🚀 Início Rápido
|
||||
|
||||
### Opção 1: Implementação a Partir do Código-Fonte (Recomendado)
|
||||
|
||||
#### Pré-requisitos
|
||||
|
||||
| Ferramenta | Versão | Descrição | Verificar Instalação |
|
||||
|------|---------|-------------|-------------------|
|
||||
| **Node.js** | 18+ | Runtime do frontend, inclui npm | `node -v` |
|
||||
| **Python** | ≥3.11, ≤3.12 | Runtime do backend | `python --version` |
|
||||
| **uv** | Mais recente | Gestor de pacotes Python | `uv --version` |
|
||||
|
||||
#### 1. Configurar Variáveis de Ambiente
|
||||
|
||||
```bash
|
||||
# Copie o ficheiro de configuração de exemplo
|
||||
cp .env.example .env
|
||||
|
||||
# Edite o ficheiro .env e preencha as chaves de API necessárias
|
||||
```
|
||||
|
||||
**Variáveis de Ambiente Obrigatórias:**
|
||||
|
||||
```env
|
||||
# Configuração da API do LLM (suporta qualquer API de LLM no formato do SDK da OpenAI)
|
||||
# Recomendado: modelo Alibaba Qwen-plus via Bailian Platform: https://bailian.console.aliyun.com/
|
||||
# Consumo elevado, experimente primeiro simulações com menos de 40 rondas
|
||||
LLM_API_KEY=a_sua_chave_api
|
||||
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
|
||||
LLM_MODEL_NAME=qwen-plus
|
||||
|
||||
# Configuração do Zep Cloud
|
||||
# A quota mensal gratuita é suficiente para uso simples: https://app.getzep.com/
|
||||
ZEP_API_KEY=a_sua_chave_api_zep
|
||||
```
|
||||
|
||||
#### 2. Instalar Dependências
|
||||
|
||||
```bash
|
||||
# Instalação de todas as dependências num só comando (raiz + frontend + backend)
|
||||
npm run setup:all
|
||||
```
|
||||
|
||||
Ou instale passo a passo:
|
||||
|
||||
```bash
|
||||
# Instalar dependências Node (raiz + frontend)
|
||||
npm run setup
|
||||
|
||||
# Instalar dependências Python (backend, cria ambiente virtual automaticamente)
|
||||
npm run setup:backend
|
||||
```
|
||||
|
||||
#### 3. Iniciar os Serviços
|
||||
|
||||
```bash
|
||||
# Iniciar frontend e backend (execute a partir da raiz do projeto)
|
||||
npm run dev
|
||||
```
|
||||
|
||||
**URLs dos Serviços:**
|
||||
- Frontend: `http://localhost:3000`
|
||||
- API do Backend: `http://localhost:5001`
|
||||
|
||||
**Iniciar Individualmente:**
|
||||
|
||||
```bash
|
||||
npm run backend # Inicia apenas o backend
|
||||
npm run frontend # Inicia apenas o frontend
|
||||
```
|
||||
|
||||
### Opção 2: Implementação com Docker
|
||||
|
||||
```bash
|
||||
# 1. Configurar variáveis de ambiente (igual à implementação por código-fonte)
|
||||
cp .env.example .env
|
||||
|
||||
# 2. Transferir a imagem e iniciar
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Lê `.env` do diretório raiz por predefinição e mapeia as portas `3000 (frontend) / 5001 (backend)`
|
||||
|
||||
> O endereço do espelho para transferência mais rápida está fornecido como comentários em `docker-compose.yml`, substitua se necessário.
|
||||
|
||||
## 📬 Junte-se à Conversa
|
||||
|
||||
<div align="center">
|
||||
<img src="./static/image/QQ群.png" alt="Grupo QQ" width="60%"/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
A equipa MiroFish está a recrutar para posições a tempo inteiro/estágio. Se tem interesse em simulação multiagente e aplicações de LLM, envie o seu currículo para: **mirofish@shanda.com**
|
||||
|
||||
## 📄 Agradecimentos
|
||||
|
||||
**O MiroFish recebeu apoio estratégico e incubação do Shanda Group!**
|
||||
|
||||
O motor de simulação do MiroFish é impulsionado pelo **[OASIS (Open Agent Social Interaction Simulations)](https://github.com/camel-ai/oasis)**. Agradecemos sinceramente à equipa CAMEL-AI pelas suas contribuições de código aberto!
|
||||
|
||||
## 📈 Estatísticas do Projeto
|
||||
|
||||
<a href="https://www.star-history.com/#666ghj/MiroFish&type=date&legend=top-left">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&theme=dark&legend=top-left" />
|
||||
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&legend=top-left" />
|
||||
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=666ghj/MiroFish&type=date&legend=top-left" />
|
||||
</picture>
|
||||
</a>
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
[](https://x.com/mirofish_ai)
|
||||
[](https://www.instagram.com/mirofish_ai/)
|
||||
|
||||
[English](./README.md) | [中文文档](./README-ZH.md)
|
||||
[English](./README.md) | [中文文档](./README-ZH.md) | [Português (Brasil)](./README-PT-BR.md) | [Português (Portugal)](./README-PT-PT.md)
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
[](https://x.com/mirofish_ai)
|
||||
[](https://www.instagram.com/mirofish_ai/)
|
||||
|
||||
[English](./README.md) | [中文文档](./README-ZH.md)
|
||||
[English](./README.md) | [中文文档](./README-ZH.md) | [Português (Brasil)](./README-PT-BR.md) | [Português (Portugal)](./README-PT-PT.md)
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -1435,7 +1435,6 @@
|
|||
"resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz",
|
||||
"integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==",
|
||||
"license": "ISC",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
|
|
@ -1913,7 +1912,6 @@
|
|||
"integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
|
|
@ -2053,7 +2051,6 @@
|
|||
"integrity": "sha512-ITcnkFeR3+fI8P1wMgItjGrR10170d8auB4EpMLPqmx6uxElH3a/hHGQabSHKdqd4FXWO1nFIp9rRn7JQ34ACQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"esbuild": "^0.25.0",
|
||||
"fdir": "^6.5.0",
|
||||
|
|
@ -2128,7 +2125,6 @@
|
|||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.5.25.tgz",
|
||||
"integrity": "sha512-YLVdgv2K13WJ6n+kD5owehKtEXwdwXuj2TTyJMsO7pSeKw2bfRNZGjhB7YzrpbMYj5b5QsUebHpOqR3R3ziy/g==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.5.25",
|
||||
"@vue/compiler-sfc": "3.5.25",
|
||||
|
|
|
|||
|
|
@ -14,7 +14,8 @@ for (const path in localeFiles) {
|
|||
}
|
||||
}
|
||||
|
||||
const savedLocale = localStorage.getItem('locale') || 'zh'
|
||||
let savedLocale = localStorage.getItem('locale') || 'zh'
|
||||
if (savedLocale === 'pt') savedLocale = 'pt-br'
|
||||
|
||||
const i18n = createI18n({
|
||||
legacy: false,
|
||||
|
|
|
|||
|
|
@ -15,9 +15,13 @@
|
|||
"label": "Français",
|
||||
"llmInstruction": "Veuillez répondre en français."
|
||||
},
|
||||
"pt": {
|
||||
"label": "Português",
|
||||
"llmInstruction": "Por favor, responda em português."
|
||||
"pt-br": {
|
||||
"label": "Português (Brasil)",
|
||||
"llmInstruction": "Por favor, responda em português do Brasil."
|
||||
},
|
||||
"pt-pt": {
|
||||
"label": "Português (Portugal)",
|
||||
"llmInstruction": "Por favor, responda em português de Portugal."
|
||||
},
|
||||
"ru": {
|
||||
"label": "Русский",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,665 @@
|
|||
{
|
||||
"common": {
|
||||
"confirm": "Confirmar",
|
||||
"cancel": "Cancelar",
|
||||
"loading": "Carregando...",
|
||||
"error": "Erro",
|
||||
"success": "Sucesso",
|
||||
"completed": "Concluído",
|
||||
"processing": "Gerando",
|
||||
"pending": "Pendente",
|
||||
"ready": "Pronto",
|
||||
"running": "Executando",
|
||||
"failed": "Falhou",
|
||||
"unknown": "Desconhecido",
|
||||
"unknownError": "Erro desconhecido",
|
||||
"none": "Nenhum",
|
||||
"close": "Fechar",
|
||||
"back": "Voltar",
|
||||
"next": "Próximo",
|
||||
"retry": "Tentar novamente",
|
||||
"noData": "Nenhum dado disponível",
|
||||
"hours": "horas",
|
||||
"minutes": "minutos",
|
||||
"rounds": "rodadas",
|
||||
"items": "itens",
|
||||
"files": "arquivos"
|
||||
},
|
||||
"meta": {
|
||||
"title": "MiroFish - Preveja Tudo",
|
||||
"description": "MiroFish - Sistema de Simulação de Opinião em Redes Sociais"
|
||||
},
|
||||
"nav": {
|
||||
"visitGithub": "Visite nossa página no Github"
|
||||
},
|
||||
"home": {
|
||||
"tagline": "Motor Conciso e Universal de Inteligência de Enxame",
|
||||
"version": "/ v0.1-Preview",
|
||||
"heroTitle1": "Envie Relatórios,",
|
||||
"heroTitle2": "Preveja o Futuro",
|
||||
"heroDesc": "A partir de um único documento, o {brand} extrai sementes de realidade para gerar automaticamente um mundo paralelo com até {agentScale}. Injete variáveis com uma visão divina para encontrar o {optimalSolution} em dinâmicas de grupo complexas.",
|
||||
"heroDescBrand": "MiroFish",
|
||||
"heroDescAgentScale": "milhões de Agentes",
|
||||
"heroDescOptimalSolution": "\"ótimo local\"",
|
||||
"slogan": "Deixe os Agentes ensaiarem o futuro, deixe as decisões prevalecerem",
|
||||
"systemStatus": "Status do Sistema",
|
||||
"systemReady": "Pronto",
|
||||
"systemReadyDesc": "Motor de predição em espera. Envie dados não estruturados para inicializar uma sequência de simulação.",
|
||||
"metricLowCost": "Baixo Custo",
|
||||
"metricLowCostDesc": "Média de US$ 5/simulação",
|
||||
"metricHighAvail": "Escalável",
|
||||
"metricHighAvailDesc": "Milhões de Agentes",
|
||||
"workflowSequence": "Fluxo de Trabalho",
|
||||
"step01Title": "Construção do Grafo",
|
||||
"step01Desc": "Extração de sementes, injeção de memória e construção de GraphRAG",
|
||||
"step02Title": "Configuração do Ambiente",
|
||||
"step02Desc": "Extração de entidades, geração de personas e injeção de configuração de Agentes",
|
||||
"step03Title": "Simulação",
|
||||
"step03Desc": "Simulação paralela em duas plataformas, análise automática de requisitos e memória temporal",
|
||||
"step04Title": "Relatório",
|
||||
"step04Desc": "O ReportAgent interage com o ambiente pós-simulação por meio de ferramentas avançadas",
|
||||
"step05Title": "Interação",
|
||||
"step05Desc": "Converse com qualquer indivíduo simulado e dialogue com o ReportAgent",
|
||||
"realitySeed": "01 / Semente da Realidade",
|
||||
"supportedFormats": "Formatos: PDF, MD, TXT",
|
||||
"dragToUpload": "Arraste arquivos para enviar",
|
||||
"orBrowse": "ou clique para navegar pelos arquivos",
|
||||
"inputParams": "Parâmetros de Entrada",
|
||||
"simulationPrompt": ">_ 02 / Prompt de Simulação",
|
||||
"promptPlaceholder": "// Descreva seu requisito de simulação ou predição em linguagem natural",
|
||||
"engineBadge": "Motor: MiroFish-V1.0",
|
||||
"startEngine": "Iniciar Motor",
|
||||
"initializing": "Inicializando..."
|
||||
},
|
||||
"main": {
|
||||
"layoutGraph": "Grafo",
|
||||
"layoutSplit": "Dividido",
|
||||
"layoutWorkbench": "Bancada",
|
||||
"stepNames": ["Construção do Grafo", "Configuração do Ambiente", "Executar Simulação", "Geração do Relatório", "Interação Profunda"]
|
||||
},
|
||||
"step1": {
|
||||
"ontologyGeneration": "Geração de Ontologia",
|
||||
"ontologyCompleted": "Concluído",
|
||||
"ontologyGenerating": "Gerando",
|
||||
"ontologyPending": "Pendente",
|
||||
"ontologyDesc": "O LLM analisa o conteúdo do documento e os requisitos da simulação, extrai sementes de realidade e gera automaticamente uma estrutura de ontologia adequada",
|
||||
"analyzingDocs": "Analisando documentos...",
|
||||
"graphRagBuild": "Construção do GraphRAG",
|
||||
"graphRagDesc": "Com base na ontologia gerada, os documentos são automaticamente divididos em chunks e enviados ao Zep para construir um grafo de conhecimento, extraindo entidades e relações, formando memória temporal e resumos de comunidades",
|
||||
"entityNodes": "Nós de Entidade",
|
||||
"relationEdges": "Arestas de Relação",
|
||||
"schemaTypes": "Tipos de Schema",
|
||||
"buildComplete": "Construção Concluída",
|
||||
"buildCompleteDesc": "A construção do grafo foi concluída. Avance para a próxima etapa para configurar o ambiente de simulação.",
|
||||
"inProgress": "Em Andamento",
|
||||
"creating": "Criando...",
|
||||
"enterEnvSetup": "Entrar na Configuração do Ambiente",
|
||||
"createSimulationFailed": "Falha ao criar simulação: {error}",
|
||||
"createSimulationException": "Erro na criação da simulação: {error}"
|
||||
},
|
||||
"step2": {
|
||||
"simInstanceInit": "Inicialização da Instância de Simulação",
|
||||
"simInstanceDesc": "Cria uma nova instância de simulação e carrega modelos de parâmetros do mundo",
|
||||
"asyncTaskDone": "Tarefa assíncrona concluída",
|
||||
"generateAgentPersona": "Gerar Personas de Agentes",
|
||||
"generateAgentPersonaDesc": "Combina o contexto para extrair automaticamente entidades e relações do grafo de conhecimento, inicializa indivíduos simulados e atribui comportamentos e memórias únicos com base nas sementes de realidade",
|
||||
"currentAgentCount": "Agentes Atuais",
|
||||
"expectedAgentTotal": "Total Esperado de Agentes",
|
||||
"relatedTopicsCount": "Tópicos Relacionados à Semente de Realidade",
|
||||
"generatedAgentPersonas": "Personas de Agentes Geradas",
|
||||
"unknownProfession": "Profissão desconhecida",
|
||||
"noBio": "Nenhuma biografia disponível",
|
||||
"dualPlatformConfig": "Gerar Configuração Dupla de Plataforma",
|
||||
"dualPlatformConfigDesc": "O LLM define de forma inteligente o fluxo de tempo do mundo, algoritmos de recomendação, horários ativos de cada indivíduo, frequência de postagens, gatilhos de eventos e muito mais, com base nos requisitos e nas sementes de realidade",
|
||||
"simulationDuration": "Duração da Simulação",
|
||||
"roundDuration": "Duração da Rodada",
|
||||
"totalRounds": "Total de Rodadas",
|
||||
"activePerHour": "Ativos por Hora",
|
||||
"peakHours": "Horários de Pico",
|
||||
"workHours": "Horário de Trabalho",
|
||||
"morningHours": "Horário Matinal",
|
||||
"offPeakHours": "Horários Fora de Pico",
|
||||
"agentConfig": "Configuração do Agente",
|
||||
"activeTimePeriod": "Horários Ativos",
|
||||
"postsPerHour": "Posts/h",
|
||||
"commentsPerHour": "Comentários/h",
|
||||
"responseDelay": "Atraso de Resposta",
|
||||
"activityLevel": "Nível de Atividade",
|
||||
"sentimentBias": "Viés de Sentimento",
|
||||
"influenceWeight": "Influência",
|
||||
"recommendAlgoConfig": "Configuração do Algoritmo de Recomendação",
|
||||
"platform1Name": "Plataforma 1: Praça / Feed",
|
||||
"platform2Name": "Plataforma 2: Tópico / Comunidade",
|
||||
"recencyWeight": "Peso de Recência",
|
||||
"popularityWeight": "Peso de Popularidade",
|
||||
"relevanceWeight": "Peso de Relevância",
|
||||
"viralThreshold": "Limiar de Viralização",
|
||||
"echoChamberStrength": "Força da Câmara de Eco",
|
||||
"llmConfigReasoning": "Raciocínio de Configuração do LLM",
|
||||
"initialActivation": "Orquestração da Ativação Inicial",
|
||||
"initialActivationDesc": "Gera automaticamente eventos de ativação inicial e tópicos em alta com base na direção narrativa para guiar o estado inicial do mundo da simulação",
|
||||
"orchestrating": "Orquestrando",
|
||||
"narrativeDirection": "Direção Narrativa",
|
||||
"initialHotTopics": "Tópicos Iniciais em Alta",
|
||||
"initialActivationSeq": "Sequência de Ativação Inicial ({count})",
|
||||
"setupComplete": "Configuração Concluída",
|
||||
"setupCompleteDesc": "O ambiente de simulação está pronto. Agora você pode iniciar a simulação.",
|
||||
"roundsConfig": "Configuração de Rodadas da Simulação",
|
||||
"roundsConfigDesc": "O MiroFish planeja automaticamente simular {hours} horas do mundo real, com cada rodada representando {minutesPerRound} minutos de tempo decorrido",
|
||||
"customToggle": "Personalizado",
|
||||
"roundsUnit": "rodadas",
|
||||
"estimatedDuration": "Para 100 Agentes: estimativa de ~{minutes} minutos",
|
||||
"estimatedDurationFull": "Para 100 Agentes: estimativa de {minutes} minutos",
|
||||
"recommendedRounds": "{rounds} (recomendado)",
|
||||
"customTip": "Para primeiras execuções, recomendamos fortemente alternar para o 'Modo Personalizado' e reduzir as rodadas para uma visualização rápida e menor risco de erros",
|
||||
"backToGraphBuild": "Voltar à Construção do Grafo",
|
||||
"startDualWorldSim": "Iniciar Simulação Paralela em Dois Mundos",
|
||||
"profileModalAge": "Idade Aparente",
|
||||
"profileModalGender": "Gênero Aparente",
|
||||
"profileModalCountry": "País/Região",
|
||||
"profileModalMbti": "MBTI Aparente",
|
||||
"profileModalBio": "Biografia da Persona",
|
||||
"profileModalTopics": "Tópicos Relacionados à Semente de Realidade",
|
||||
"profileModalPersona": "Histórico Detalhado da Persona",
|
||||
"personaDimExperience": "Experiência Completa do Evento",
|
||||
"personaDimExperienceDesc": "Trajetória comportamental completa neste evento",
|
||||
"personaDimBehavior": "Perfil Comportamental",
|
||||
"personaDimBehaviorDesc": "Resumo de experiências e preferências comportamentais",
|
||||
"personaDimMemory": "Impressão de Memória Única",
|
||||
"personaDimMemoryDesc": "Memórias formadas a partir de sementes de realidade",
|
||||
"personaDimSocial": "Rede Social",
|
||||
"personaDimSocialDesc": "Conexões individuais e grafo de interação",
|
||||
"genderMale": "Masculino",
|
||||
"genderFemale": "Feminino",
|
||||
"genderOther": "Outro",
|
||||
"yearsOld": "anos",
|
||||
"initializing": "Inicializando",
|
||||
"generating": "Gerando"
|
||||
},
|
||||
"step3": {
|
||||
"startGenerateReport": "Gerar Relatório",
|
||||
"generatingReport": "Iniciando...",
|
||||
"waitingForActions": "Aguardando ações dos agentes...",
|
||||
"errorMissingSimId": "Erro: simulationId ausente",
|
||||
"startingDualSim": "Iniciando simulação paralela em duas plataformas...",
|
||||
"graphMemoryUpdateEnabled": "Atualização dinâmica de memória do grafo habilitada",
|
||||
"setMaxRounds": "Máximo de rodadas de simulação definido em: {rounds}",
|
||||
"oldSimCleared": "Logs antigos de simulação limpos, reiniciando simulação",
|
||||
"engineStarted": "Motor de simulação iniciado com sucesso",
|
||||
"startFailed": "Falha ao iniciar: {error}",
|
||||
"startException": "Erro ao iniciar: {error}",
|
||||
"stoppingSim": "Parando simulação...",
|
||||
"simStopped": "Simulação parada",
|
||||
"stopFailed": "Falha ao parar: {error}",
|
||||
"stopException": "Erro ao parar: {error}",
|
||||
"allPlatformsCompleted": "Todas as simulações de plataforma foram encerradas",
|
||||
"simCompleted": "Simulação concluída",
|
||||
"graphRealtimeRefresh": "Atualização em tempo real do grafo habilitada (30s)",
|
||||
"graphRefreshStopped": "Atualização em tempo real do grafo interrompida",
|
||||
"preparingGoBack": "Preparando retorno à Etapa 2, encerrando simulação...",
|
||||
"closingSimEnv": "Encerrando ambiente de simulação...",
|
||||
"simEnvClosed": "Ambiente de simulação encerrado",
|
||||
"closeFailed": "Falha ao encerrar o ambiente de simulação, tentando parada forçada...",
|
||||
"stoppingProcess": "Parando processo de simulação...",
|
||||
"checkStatusFailed": "Falha ao verificar status da simulação: {error}",
|
||||
"forceStopSuccess": "Simulação parada à força",
|
||||
"forceStopFailed": "Parada forçada falhou: {error}",
|
||||
"startGenerateReportBtn": "Gerar Relatório",
|
||||
"generatingReportBtn": "Iniciando..."
|
||||
},
|
||||
"step4": {
|
||||
"generatingSection": "Gerando {title}...",
|
||||
"goToInteraction": "Entrar na Interação Profunda",
|
||||
"waitingForReportAgent": "Aguardando o Report Agent...",
|
||||
"collapse": "Recolher ▲",
|
||||
"expandAll": "Mostrar todos os {count} ▼",
|
||||
"expandAllEntities": "Mostrar todas as {count} ▼",
|
||||
"scenarioLabel": "Cenário: ",
|
||||
"tabKeyFacts": "Fatos Principais ({count})",
|
||||
"tabCoreEntities": "Entidades Centrais ({count})",
|
||||
"tabRelationChains": "Cadeias de Relação ({count})",
|
||||
"tabSubQueries": "Subconsultas ({count})",
|
||||
"panelKeyFacts": "Fatos principais mais recentes da memória temporal",
|
||||
"totalCount": "{count} no total",
|
||||
"totalEntityCount": "{count} no total",
|
||||
"panelCoreEntities": "Entidades Centrais",
|
||||
"factCount": "{count} fatos",
|
||||
"panelRelationChains": "Cadeias de Relação",
|
||||
"panelSubQueries": "Subperguntas de análise de consulta de desvio",
|
||||
"emptyKeyFacts": "Nenhum fato principal disponível",
|
||||
"emptyCoreEntities": "Nenhuma entidade central disponível",
|
||||
"emptyRelationChains": "Nenhuma cadeia de relação disponível",
|
||||
"tabActiveFacts": "Fatos Ativos ({count})",
|
||||
"tabHistoricalFacts": "Fatos Históricos ({count})",
|
||||
"tabEntities": "Entidades ({count})",
|
||||
"panelActiveFacts": "Fatos Ativos",
|
||||
"emptyActiveFacts": "Nenhum fato ativo disponível",
|
||||
"panelHistoricalFacts": "Fatos Históricos",
|
||||
"emptyHistoricalFacts": "Nenhum fato histórico disponível",
|
||||
"panelEntities": "Entidades",
|
||||
"emptyEntities": "Nenhuma entidade disponível",
|
||||
"searchLabel": "Buscar: ",
|
||||
"tabFacts": "Fatos ({count})",
|
||||
"tabEdges": "Arestas ({count})",
|
||||
"tabNodes": "Nós ({count})",
|
||||
"panelSearchResults": "Resultados da Busca",
|
||||
"emptySearchResults": "Nenhum resultado encontrado",
|
||||
"panelRelatedEdges": "Arestas Relacionadas",
|
||||
"panelRelatedNodes": "Nós Relacionados",
|
||||
"world1": "Mundo 1",
|
||||
"world2": "Mundo 2"
|
||||
},
|
||||
"step5": {
|
||||
"interactiveTools": "Ferramentas Interativas",
|
||||
"agentsAvailable": "{count} agentes disponíveis",
|
||||
"chatWithReportAgent": "Conversar com o Report Agent",
|
||||
"chatWithAgent": "Converse com qualquer indivíduo do mundo",
|
||||
"selectChatTarget": "Selecionar alvo da conversa",
|
||||
"sendSurvey": "Enviar pesquisa ao mundo",
|
||||
"reportAgentChat": "Report Agent - Conversa",
|
||||
"reportAgentDesc": "Uma versão conversacional do agente gerador de relatórios com acesso a 4 ferramentas profissionais e à memória completa do MiroFish",
|
||||
"toolInsightForge": "InsightForge - Atribuição Profunda",
|
||||
"toolInsightForgeDesc": "Alinha dados reais das sementes com o estado da simulação, combinando Memória Global/Local para análise de atribuição profunda entre períodos temporais",
|
||||
"toolPanoramaSearch": "PanoramaSearch - Rastreamento Completo",
|
||||
"toolPanoramaSearchDesc": "Algoritmo de busca em largura (BFS) baseado em grafo que reconstrói caminhos de propagação de eventos, capturando a topologia completa do fluxo de informação",
|
||||
"toolQuickSearch": "QuickSearch - Recuperação Rápida",
|
||||
"toolQuickSearchDesc": "Interface de consulta instantânea baseada em GraphRAG com indexação otimizada para extração rápida de atributos de nós e fatos discretos",
|
||||
"toolInterviewSubAgent": "InterviewSubAgent - Entrevista Virtual",
|
||||
"toolInterviewSubAgentDesc": "Entrevistas autônomas que conduzem diálogos paralelos em múltiplas rodadas com indivíduos simulados, coletando dados de opinião não estruturados e estados psicológicos",
|
||||
"profileBio": "Biografia",
|
||||
"chatEmptyReportAgent": "Converse com o Report Agent para explorar o conteúdo do relatório em profundidade",
|
||||
"chatEmptyAgent": "Converse com indivíduos simulados para entender suas perspectivas",
|
||||
"chatInputPlaceholder": "Digite sua pergunta...",
|
||||
"selectSurveyTarget": "Selecionar alvos da pesquisa",
|
||||
"selectedCount": "Selecionados {selected} / {total}",
|
||||
"surveyQuestions": "Perguntas da Pesquisa",
|
||||
"surveyInputPlaceholder": "Digite a pergunta que deseja fazer a todos os alvos selecionados...",
|
||||
"submitSurvey": "Enviar Pesquisa",
|
||||
"surveyResults": "Resultados da Pesquisa",
|
||||
"surveyResultsCount": "{count} respostas",
|
||||
"selectAll": "Selecionar Tudo",
|
||||
"clearSelection": "Limpar",
|
||||
"errorOccurred": "Desculpe, ocorreu um erro: {error}",
|
||||
"noResponse": "Sem resposta",
|
||||
"requestFailed": "Requisição falhou",
|
||||
"selectAgentFirst": "Por favor, selecione um indivíduo simulado primeiro"
|
||||
},
|
||||
"graph": {
|
||||
"panelTitle": "Visualização de Relacionamentos do Grafo",
|
||||
"refreshGraph": "Atualizar Grafo",
|
||||
"graphMemoryRealtime": "Memória de curto/longo prazo do GraphRAG atualizando em tempo real",
|
||||
"realtimeUpdating": "Atualizando em tempo real...",
|
||||
"pendingContentHint": "Parte do conteúdo ainda está sendo processada. Considere atualizar o grafo manualmente mais tarde.",
|
||||
"nodeDetails": "Detalhes do Nó",
|
||||
"relationship": "Relacionamento",
|
||||
"graphDataLoading": "Carregando dados do grafo...",
|
||||
"waitingOntology": "Aguardando geração da ontologia...",
|
||||
"toggleMaximize": "Maximizar/Restaurar",
|
||||
"closeHint": "Fechar dica"
|
||||
},
|
||||
"history": {
|
||||
"title": "Histórico de Simulações",
|
||||
"graphBuild": "Construção do Grafo",
|
||||
"envSetup": "Configuração do Ambiente",
|
||||
"analysisReport": "Relatório de Análise",
|
||||
"moreFiles": "+{count} arquivos",
|
||||
"noFiles": "Sem arquivos",
|
||||
"loadingText": "Carregando...",
|
||||
"simRequirement": "Requisito da Simulação",
|
||||
"relatedFiles": "Arquivos Relacionados",
|
||||
"noRelatedFiles": "Nenhum arquivo relacionado",
|
||||
"replayTitle": "Replay da Simulação",
|
||||
"step1Button": "Construção do Grafo",
|
||||
"step2Button": "Configuração do Ambiente",
|
||||
"step4Button": "Relatório de Análise",
|
||||
"replayHint": "A Etapa 3 'Executar Simulação' e a Etapa 5 'Interação Profunda' devem ser iniciadas em tempo de execução e não oferecem suporte a replay de histórico",
|
||||
"notStarted": "Não iniciado",
|
||||
"roundsProgress": "{current}/{total} rodadas",
|
||||
"untitledSimulation": "Simulação sem título",
|
||||
"unknownFile": "Arquivo desconhecido"
|
||||
},
|
||||
"api": {
|
||||
"projectNotFound": "Projeto não encontrado: {id}",
|
||||
"projectDeleteFailed": "Projeto não encontrado ou falha na exclusão: {id}",
|
||||
"projectDeleted": "Projeto excluído: {id}",
|
||||
"projectReset": "Projeto redefinido: {id}",
|
||||
"requireSimulationRequirement": "Por favor, forneça um requisito de simulação (simulation_requirement)",
|
||||
"requireFileUpload": "Por favor, envie ao menos um arquivo de documento",
|
||||
"noDocProcessed": "Nenhum documento foi processado com sucesso. Verifique os formatos dos arquivos.",
|
||||
"requireProjectId": "Por favor, forneça project_id",
|
||||
"configError": "Erro de configuração: {details}",
|
||||
"zepApiKeyMissing": "ZEP_API_KEY não configurada",
|
||||
"ontologyNotGenerated": "Ontologia ainda não gerada. Chame /ontology/generate primeiro.",
|
||||
"graphBuilding": "Construção do grafo em andamento. Não reenvie. Para forçar reconstrução, adicione force: true.",
|
||||
"textNotFound": "Conteúdo de texto extraído não encontrado",
|
||||
"ontologyNotFound": "Definição da ontologia não encontrada",
|
||||
"graphBuildStarted": "Tarefa de construção do grafo iniciada. Consulte o progresso em /task/{taskId}.",
|
||||
"graphBuildComplete": "Construção do grafo concluída",
|
||||
"buildFailed": "Falha na construção: {error}",
|
||||
"taskNotFound": "Tarefa não encontrada: {id}",
|
||||
"graphDeleted": "Grafo excluído: {id}",
|
||||
"entityNotFound": "Entidade não encontrada: {id}",
|
||||
"graphNotBuilt": "Grafo ainda não construído. Chame /api/graph/build primeiro.",
|
||||
"requireSimulationId": "Por favor, forneça simulation_id",
|
||||
"simulationNotFound": "Simulação não encontrada: {id}",
|
||||
"projectMissingRequirement": "O projeto não possui requisito de simulação (simulation_requirement)",
|
||||
"prepareStarted": "Tarefa de preparação iniciada. Consulte o progresso em /api/simulation/prepare/status.",
|
||||
"alreadyPrepared": "Preparação já concluída. Não é necessário regenerar.",
|
||||
"notStartedPrepare": "Preparação não iniciada. Chame /api/simulation/prepare.",
|
||||
"taskCompletedPrepared": "Tarefa concluída (preparação já existente)",
|
||||
"requireTaskOrSimId": "Por favor, forneça task_id ou simulation_id",
|
||||
"configNotFound": "Configuração da simulação não encontrada. Chame /prepare primeiro.",
|
||||
"configFileNotFound": "Arquivo de configuração não encontrado. Chame /prepare primeiro.",
|
||||
"unknownScript": "Script desconhecido: {name}. Disponíveis: {allowed}",
|
||||
"scriptFileNotFound": "Arquivo de script não encontrado: {name}",
|
||||
"requireGraphId": "Por favor, forneça graph_id",
|
||||
"noMatchingEntities": "Nenhuma entidade correspondente encontrada",
|
||||
"maxRoundsPositive": "max_rounds deve ser um inteiro positivo",
|
||||
"maxRoundsInvalid": "max_rounds deve ser um inteiro válido",
|
||||
"invalidPlatform": "Tipo de plataforma inválido: {platform}. Opções: twitter/reddit/parallel",
|
||||
"simRunningForceHint": "A simulação está em execução. Pare-a primeiro via /stop, ou use force=true para reiniciar.",
|
||||
"simNotReady": "Simulação não está pronta. Status atual: {status}. Chame /prepare primeiro.",
|
||||
"graphIdRequiredForMemory": "A atualização de memória do grafo requer um graph_id válido. Garanta que o grafo esteja construído.",
|
||||
"dbNotExist": "O banco de dados não existe. A simulação pode ainda não ter sido executada.",
|
||||
"requireMessage": "Por favor, forneça uma mensagem",
|
||||
"missingGraphId": "ID do grafo ausente",
|
||||
"missingGraphIdEnsure": "ID do grafo ausente. Certifique-se de que o grafo foi construído.",
|
||||
"missingSimRequirement": "Descrição do requisito de simulação ausente",
|
||||
"reportAlreadyExists": "Relatório já existe",
|
||||
"reportGenerateStarted": "Tarefa de geração de relatório iniciada. Consulte o progresso em /api/report/generate/status.",
|
||||
"reportGenerated": "Relatório gerado",
|
||||
"reportNotFound": "Relatório não encontrado: {id}",
|
||||
"noReportForSim": "Nenhum relatório encontrado para esta simulação: {id}",
|
||||
"reportDeleted": "Relatório excluído: {id}",
|
||||
"reportGenerateFailed": "Geração de relatório falhou",
|
||||
"sectionNotFound": "Seção não encontrada: section_{index}.md",
|
||||
"reportProgressNotAvail": "Relatório não encontrado ou progresso indisponível: {id}",
|
||||
"requireAgentId": "Por favor, forneça agent_id",
|
||||
"requirePrompt": "Por favor, forneça um prompt (pergunta da entrevista)",
|
||||
"invalidInterviewPlatform": "A plataforma deve ser 'twitter' ou 'reddit'",
|
||||
"envNotRunning": "Ambiente de simulação não está em execução ou foi encerrado. Garanta que a simulação esteja concluída e em modo de espera por comando.",
|
||||
"interviewTimeout": "Tempo esgotado para resposta da entrevista: {error}",
|
||||
"requireInterviews": "Por favor, forneça interviews (lista de entrevistas)",
|
||||
"interviewListMissingAgentId": "Item {index} da lista de entrevistas sem agent_id",
|
||||
"interviewListMissingPrompt": "Item {index} da lista de entrevistas sem prompt",
|
||||
"interviewListInvalidPlatform": "A plataforma do item {index} da lista de entrevistas deve ser 'twitter' ou 'reddit'",
|
||||
"batchInterviewTimeout": "Tempo esgotado para resposta em lote de entrevistas: {error}",
|
||||
"globalInterviewTimeout": "Tempo esgotado para resposta global de entrevistas: {error}",
|
||||
"envRunning": "Ambiente em execução e pronto para comandos de Entrevista",
|
||||
"envNotRunningShort": "Ambiente não está em execução ou foi encerrado",
|
||||
"requireGraphIdAndQuery": "Por favor, forneça graph_id e query",
|
||||
"initReportAgent": "Inicializando o Report Agent..."
|
||||
},
|
||||
"progress": {
|
||||
"initGraphService": "Inicializando serviço de construção do grafo...",
|
||||
"textChunking": "Dividindo texto em chunks...",
|
||||
"creatingZepGraph": "Criando grafo no Zep...",
|
||||
"settingOntology": "Definindo a ontologia...",
|
||||
"addingChunks": "Adicionando {count} chunks de texto...",
|
||||
"waitingZepProcess": "Aguardando o Zep processar os dados...",
|
||||
"fetchingGraphData": "Buscando dados do grafo...",
|
||||
"graphBuildComplete": "Construção do grafo concluída",
|
||||
"buildFailed": "Falha na construção: {error}",
|
||||
"startBuildingGraph": "Iniciando construção do grafo...",
|
||||
"graphCreated": "Grafo criado: {graphId}",
|
||||
"ontologySet": "Ontologia definida",
|
||||
"textSplit": "Texto dividido em {count} chunks",
|
||||
"fetchingGraphInfo": "Buscando informações do grafo...",
|
||||
"sendingBatch": "Enviando lote {current}/{total} ({chunks} chunks)...",
|
||||
"batchFailed": "Lote {batch} falhou: {error}",
|
||||
"noEpisodesWait": "Nenhum episódio a aguardar",
|
||||
"waitingEpisodes": "Aguardando o processamento de {count} chunks de texto...",
|
||||
"episodesTimeout": "Alguns chunks atingiram o tempo limite, {completed}/{total} concluídos",
|
||||
"zepProcessing": "Zep processando... {completed}/{total} concluídos, {pending} pendentes ({elapsed}s)",
|
||||
"processingComplete": "Processamento concluído: {completed}/{total}",
|
||||
"taskComplete": "Tarefa concluída",
|
||||
"taskFailed": "Tarefa falhou",
|
||||
"startPreparingEnv": "Preparando ambiente de simulação...",
|
||||
"connectingZepGraph": "Conectando ao grafo do Zep...",
|
||||
"readingNodeData": "Lendo dados dos nós...",
|
||||
"readingComplete": "Concluído, {count} entidades encontradas",
|
||||
"startGenerating": "Iniciando geração...",
|
||||
"analyzingRequirements": "Analisando requisitos da simulação...",
|
||||
"generatingOutline": "Gerando estrutura do relatório...",
|
||||
"parsingOutline": "Analisando estrutura da estrutura...",
|
||||
"outlinePlanComplete": "Planejamento da estrutura concluído",
|
||||
"deepSearchAndWrite": "Busca profunda e redação ({current}/{max})",
|
||||
"initReport": "Inicializando relatório...",
|
||||
"startPlanningOutline": "Planejando estrutura do relatório...",
|
||||
"outlineDone": "Estrutura concluída, {count} seções",
|
||||
"generatingSection": "Gerando seção: {title} ({current}/{total})",
|
||||
"sectionDone": "Seção {title} concluída",
|
||||
"assemblingReport": "Montando relatório completo...",
|
||||
"reportComplete": "Geração do relatório concluída",
|
||||
"reportFailed": "Falha na geração do relatório: {error}",
|
||||
"savingProfiles": "Salvando arquivos de perfil...",
|
||||
"profilesComplete": "Concluído, {count} perfis gerados",
|
||||
"callingLLMConfig": "Chamando o LLM para gerar configuração...",
|
||||
"savingConfigFiles": "Salvando arquivos de configuração...",
|
||||
"configComplete": "Geração de configuração concluída",
|
||||
"generatingTimeConfig": "Gerando configuração de tempo...",
|
||||
"generatingEventConfig": "Gerando configuração de eventos e tópicos em alta...",
|
||||
"generatingAgentConfig": "Gerando configuração de agentes ({start}-{end}/{total})...",
|
||||
"generatingPlatformConfig": "Gerando configuração de plataforma...",
|
||||
"zepSearchQuery": "Todas as informações, atividades, eventos, relacionamentos e contexto sobre {name}",
|
||||
"timeConfigLabel": "Configuração de Tempo",
|
||||
"eventConfigLabel": "Configuração de Eventos",
|
||||
"agentConfigResult": "Configuração de Agentes: {count} gerados",
|
||||
"postAssignResult": "Atribuição de Posts: {count} posts atribuídos",
|
||||
"profileGenerated": "[Gerado] {name} ({type})",
|
||||
"readingGraphEntities": "Lendo Entidades do Grafo",
|
||||
"generatingProfiles": "Gerando Perfis de Agentes",
|
||||
"generatingSimConfig": "Gerando Configuração da Simulação",
|
||||
"preparingScripts": "Preparando Scripts"
|
||||
},
|
||||
"log": {
|
||||
"preparingGoBack": "Preparando retorno à Etapa 2, encerrando simulação...",
|
||||
"closingSimEnv": "Encerrando ambiente de simulação...",
|
||||
"simEnvClosed": "✓ Ambiente de simulação encerrado",
|
||||
"closeSimEnvFailed": "Falha ao encerrar o ambiente de simulação, tentando parada forçada...",
|
||||
"simForceStopSuccess": "✓ Simulação parada à força",
|
||||
"forceStopFailed": "Parada forçada falhou: {error}",
|
||||
"stoppingSimProcess": "Parando processo de simulação...",
|
||||
"simStopped": "✓ Simulação parada",
|
||||
"stopSimFailed": "Falha ao parar a simulação: {error}",
|
||||
"checkStatusFailed": "Falha ao verificar status da simulação: {error}",
|
||||
"enterStep4": "Entrando na Etapa 4: Geração do Relatório",
|
||||
"loadingSimData": "Carregando dados da simulação: {id}",
|
||||
"timeConfig": "Configuração de tempo: {minutes} minutos por rodada",
|
||||
"timeConfigFetchFailed": "Falha ao buscar configuração de tempo, usando padrão: {minutes} min/rodada",
|
||||
"projectLoadSuccess": "Projeto carregado: {id}",
|
||||
"loadSimDataFailed": "Falha ao carregar dados da simulação: {error}",
|
||||
"loadException": "Erro ao carregar: {error}",
|
||||
"graphDataLoadSuccess": "Dados do grafo carregados com sucesso",
|
||||
"graphLoadFailed": "Falha ao carregar o grafo: {error}",
|
||||
"graphRealtimeRefreshStart": "Atualização em tempo real do grafo habilitada (30s)",
|
||||
"graphRealtimeRefreshStop": "Atualização em tempo real do grafo interrompida",
|
||||
"simRunViewInit": "SimulationRunView inicializado",
|
||||
"customRounds": "Rodadas personalizadas de simulação: {rounds}",
|
||||
"enterStep3": "Entrando na Etapa 3: Executar Simulação",
|
||||
"customRoundsConfig": "Rodadas personalizadas de simulação: {rounds} rodadas",
|
||||
"useAutoRounds": "Usando rodadas de simulação configuradas automaticamente",
|
||||
"detectedSimEnvRunning": "Detectado ambiente de simulação em execução, encerrando...",
|
||||
"closeSimEnvFailedWithError": "Falha ao encerrar ambiente de simulação: {error}",
|
||||
"closeSimEnvException": "Erro no encerramento do ambiente de simulação: {error}",
|
||||
"detectedSimRunning": "Detectada simulação em execução, parando...",
|
||||
"forceStopSimFailed": "Parada forçada da simulação falhou: {error}",
|
||||
"forceStopSimException": "Erro na parada forçada da simulação: {error}",
|
||||
"simViewInit": "SimulationView inicializado",
|
||||
"errorMissingSimId": "Erro: simulationId ausente",
|
||||
"simInstanceCreated": "Instância de simulação criada: {id}",
|
||||
"preparingSimEnv": "Preparando ambiente de simulação...",
|
||||
"detectedExistingPrep": "Detectada preparação existente, usando-a diretamente",
|
||||
"prepareTaskStarted": "Tarefa de preparação iniciada",
|
||||
"prepareTaskId": " └─ ID da Tarefa: {taskId}",
|
||||
"zepEntitiesFound": "Encontradas {count} entidades no grafo do Zep",
|
||||
"entityTypes": " └─ Tipos de entidade: {types}",
|
||||
"startPollingProgress": "Consultando progresso da preparação...",
|
||||
"prepareFailed": "Preparação falhou: {error}",
|
||||
"prepareException": "Erro na preparação: {error}",
|
||||
"prepareComplete": "✓ Preparação concluída",
|
||||
"prepareFailedWithError": "✗ Preparação falhou: {error}",
|
||||
"startGeneratingConfig": "Gerando configuração de simulação de dupla plataforma...",
|
||||
"generatingAgentProfileConfig": "Gerando configuração de personas de agentes...",
|
||||
"generatingLLMConfig": "Chamando o LLM para gerar parâmetros de configuração da simulação...",
|
||||
"configComplete": "✓ Configuração da simulação gerada",
|
||||
"configSummaryAgents": " ├─ Agentes: {count}",
|
||||
"configSummaryHours": " ├─ Duração: {hours} horas",
|
||||
"configSummaryPosts": " ├─ Posts iniciais: {count}",
|
||||
"configSummaryTopics": " ├─ Tópicos em alta: {count}",
|
||||
"configSummaryPlatforms": " └─ Plataformas: Twitter {twitter}, Reddit {reddit}",
|
||||
"timeConfigDetail": "Configuração de tempo: {minutes} min/rodada, {rounds} rodadas no total",
|
||||
"narrativeDirection": "Direção narrativa: {direction}",
|
||||
"envSetupComplete": "✓ Configuração do ambiente concluída, pronto para simular",
|
||||
"startSimCustomRounds": "Iniciando simulação, rodadas personalizadas: {rounds}",
|
||||
"startSimAutoRounds": "Iniciando simulação, rodadas configuradas automaticamente: {rounds}",
|
||||
"startGeneratingAgentProfiles": "Gerando personas de agentes...",
|
||||
"agentProfile": "→ Persona do agente {current}/{total}: {name} ({profession})",
|
||||
"allProfilesComplete": "✓ Todas as {count} personas de agentes geradas",
|
||||
"loadingExistingConfig": "Carregando dados de configuração existentes...",
|
||||
"loadedAgentProfiles": "Carregadas {count} personas de agentes",
|
||||
"configLoadSuccess": "✓ Configuração da simulação carregada",
|
||||
"configSummaryPostsAlt": " └─ Posts iniciais: {count}",
|
||||
"configGenerating": "Configuração gerando, consultando...",
|
||||
"loadConfigFailed": "Falha ao carregar configuração: {error}",
|
||||
"step2Init": "Configuração de ambiente da Etapa 2 inicializada",
|
||||
"step3Init": "Execução de simulação da Etapa 3 inicializada",
|
||||
"startingDualSim": "Iniciando simulação paralela em duas plataformas...",
|
||||
"setMaxRounds": "Máximo de rodadas de simulação definido em: {rounds}",
|
||||
"graphMemoryUpdateEnabled": "Atualização dinâmica de memória do grafo habilitada",
|
||||
"oldSimCleared": "✓ Logs antigos de simulação limpos, reiniciando simulação",
|
||||
"engineStarted": "✓ Motor de simulação iniciado com sucesso",
|
||||
"startFailed": "✗ Falha ao iniciar: {error}",
|
||||
"startException": "✗ Erro ao iniciar: {error}",
|
||||
"stoppingSim": "Parando simulação...",
|
||||
"simStoppedSuccess": "✓ Simulação parada",
|
||||
"stopFailed": "Falha ao parar: {error}",
|
||||
"stopException": "Erro ao parar: {error}",
|
||||
"allPlatformsCompleted": "✓ Todas as simulações de plataforma foram encerradas",
|
||||
"simCompleted": "✓ Simulação concluída",
|
||||
"reportRequestSent": "Solicitação de geração de relatório enviada, aguarde...",
|
||||
"startingReportGen": "Iniciando geração de relatório...",
|
||||
"reportGenTaskStarted": "✓ Tarefa de geração de relatório iniciada: {reportId}",
|
||||
"reportGenFailed": "✗ Falha ao iniciar a geração de relatório: {error}",
|
||||
"reportGenException": "✗ Erro na geração de relatório: {error}",
|
||||
"step5Init": "Interação profunda da Etapa 5 inicializada",
|
||||
"selectChatTarget": "Alvo da conversa selecionado: {name}",
|
||||
"sendFailed": "Envio falhou: {error}",
|
||||
"sendToReportAgent": "Enviado ao Report Agent: {message}...",
|
||||
"reportAgentReplied": "Report Agent respondeu",
|
||||
"sendToAgent": "Enviado para {name}: {message}...",
|
||||
"agentReplied": "{name} respondeu",
|
||||
"sendSurvey": "Enviando pesquisa para {count} alvos...",
|
||||
"receivedReplies": "Recebidas {count} respostas",
|
||||
"surveySendFailed": "Envio da pesquisa falhou: {error}",
|
||||
"loadReportData": "Carregando dados do relatório: {id}",
|
||||
"loadReportFailed": "Falha ao carregar relatório: {error}",
|
||||
"reportDataLoaded": "Dados do relatório carregados",
|
||||
"loadReportLogFailed": "Falha ao carregar logs do relatório: {error}",
|
||||
"loadedProfiles": "Carregados {count} indivíduos simulados",
|
||||
"loadProfilesFailed": "Falha ao carregar indivíduos simulados: {error}",
|
||||
"interactionViewInit": "InteractionView inicializado",
|
||||
"reportViewInit": "ReportView inicializado",
|
||||
"getReportInfoFailed": "Falha ao obter informações do relatório: {error}",
|
||||
"enterStep": "Entrando na Etapa {step}: {name}",
|
||||
"returnToStep": "Retornando à Etapa {step}: {name}",
|
||||
"customSimRounds": "Rodadas personalizadas de simulação: {rounds} rodadas"
|
||||
},
|
||||
"report": {
|
||||
"taskStarted": "Tarefa de geração de relatório iniciada",
|
||||
"planningStart": "Iniciando planejamento da estrutura do relatório",
|
||||
"fetchSimContext": "Buscando contexto da simulação",
|
||||
"planningComplete": "Planejamento da estrutura concluído",
|
||||
"sectionStart": "Iniciando geração da seção: {title}",
|
||||
"reactThought": "ReACT rodada {iteration} pensando",
|
||||
"toolCall": "Chamando ferramenta: {toolName}",
|
||||
"toolResult": "Ferramenta {toolName} retornou resultado",
|
||||
"llmResponse": "Resposta do LLM (chamadas de ferramenta: {hasToolCalls}, resposta final: {hasFinalAnswer})",
|
||||
"sectionContentDone": "Geração de conteúdo da seção {title} concluída",
|
||||
"sectionComplete": "Geração da seção {title} concluída",
|
||||
"reportComplete": "Geração do relatório concluída",
|
||||
"errorOccurred": "Ocorreu um erro: {error}",
|
||||
"agentInitDone": "ReportAgent inicializado: graph_id={graphId}, simulation_id={simulationId}",
|
||||
"executingTool": "Executando ferramenta: {toolName}, parâmetros: {params}",
|
||||
"toolExecFailed": "Execução da ferramenta falhou: {toolName}, erro: {error}",
|
||||
"startPlanningOutline": "Iniciando planejamento da estrutura do relatório...",
|
||||
"outlinePlanDone": "Planejamento da estrutura concluído: {count} seções",
|
||||
"outlinePlanFailed": "Planejamento da estrutura falhou: {error}",
|
||||
"reactGenerateSection": "ReACT gerando seção: {title}",
|
||||
"sectionIterNone": "Seção {title} iteração {iteration}: LLM retornou None",
|
||||
"sectionConflict": "Seção {title} rodada {iteration}: LLM retornou tanto chamada de ferramenta quanto Final Answer (conflito #{conflictCount})",
|
||||
"sectionConflictDowngrade": "Seção {title}: {conflictCount} conflitos consecutivos, rebaixando para truncar e executar a primeira chamada de ferramenta",
|
||||
"sectionGenDone": "Geração da seção {title} concluída (chamadas de ferramenta: {count})",
|
||||
"multiToolOnlyFirst": "O LLM tentou {total} chamadas de ferramenta, executando apenas a primeira: {toolName}",
|
||||
"sectionNoPrefix": "Seção {title} sem prefixo 'Final Answer:', adotando saída do LLM como conteúdo final (chamadas de ferramenta: {count})",
|
||||
"sectionMaxIter": "Seção {title} atingiu o máximo de iterações, forçando geração",
|
||||
"sectionForceFailed": "Seção {title}: LLM retornou None ao forçar encerramento, usando mensagem de erro padrão",
|
||||
"sectionGenFailedContent": "(Esta seção não pôde ser gerada: o LLM retornou resposta vazia; tente novamente mais tarde)",
|
||||
"outlineSavedToFile": "Estrutura salva em arquivo: {reportId}/outline.json",
|
||||
"sectionSaved": "Seção salva: {reportId}/section_{sectionNum}.md",
|
||||
"reportGenDone": "Geração do relatório concluída: {reportId}",
|
||||
"reportGenFailed": "Geração do relatório falhou: {error}",
|
||||
"agentChat": "Conversa do Report Agent: {message}...",
|
||||
"fetchReportFailed": "Falha ao buscar conteúdo do relatório: {error}",
|
||||
"outlineSaved": "Estrutura salva: {reportId}",
|
||||
"sectionFileSaved": "Seção salva: {reportId}/{fileSuffix}",
|
||||
"fullReportAssembled": "Relatório completo montado: {reportId}",
|
||||
"reportSaved": "Relatório salvo: {reportId}",
|
||||
"reportFolderDeleted": "Pasta do relatório excluída: {reportId}",
|
||||
"redirectToQuickSearch": "search_graph redirecionado para quick_search",
|
||||
"redirectToInsightForge": "get_simulation_context redirecionado para insight_forge"
|
||||
},
|
||||
"console": {
|
||||
"zepToolsInitialized": "ZepToolsService inicializado",
|
||||
"zepRetryAttempt": "Tentativa {attempt} de {operation} no Zep falhou: {error}, tentando novamente em {delay}s...",
|
||||
"zepAllRetriesFailed": "Operação {operation} no Zep falhou após {retries} tentativas: {error}",
|
||||
"graphSearch": "Busca no grafo: graph_id={graphId}, query={query}...",
|
||||
"graphSearchOp": "Busca no grafo (graph={graphId})",
|
||||
"searchComplete": "Busca concluída: encontrados {count} fatos relevantes",
|
||||
"zepSearchApiFallback": "API de busca do Zep falhou, recorrendo à busca local: {error}",
|
||||
"usingLocalSearch": "Usando busca local: query={query}...",
|
||||
"localSearchComplete": "Busca local concluída: encontrados {count} fatos relevantes",
|
||||
"localSearchFailed": "Busca local falhou: {error}",
|
||||
"fetchingAllNodes": "Buscando todos os nós do grafo {graphId}...",
|
||||
"fetchedNodes": "{count} nós buscados",
|
||||
"fetchingAllEdges": "Buscando todas as arestas do grafo {graphId}...",
|
||||
"fetchedEdges": "{count} arestas buscadas",
|
||||
"fetchingNodeDetail": "Buscando detalhes do nó: {uuid}...",
|
||||
"fetchNodeDetailOp": "Buscar detalhes do nó (uuid={uuid}...)",
|
||||
"fetchNodeDetailFailed": "Falha ao buscar detalhes do nó: {error}",
|
||||
"fetchingNodeEdges": "Buscando arestas do nó {uuid}...",
|
||||
"foundNodeEdges": "Encontradas {count} arestas relacionadas ao nó",
|
||||
"fetchNodeEdgesFailed": "Falha ao buscar arestas do nó: {error}",
|
||||
"fetchingEntitiesByType": "Buscando entidades do tipo {type}...",
|
||||
"foundEntitiesByType": "Encontradas {count} entidades do tipo {type}",
|
||||
"fetchingEntitySummary": "Buscando resumo de relacionamentos da entidade {name}...",
|
||||
"fetchingGraphStats": "Buscando estatísticas do grafo {graphId}...",
|
||||
"fetchingSimContext": "Buscando contexto da simulação: {requirement}...",
|
||||
"insightForgeStart": "InsightForge - recuperação profunda de insights: {query}...",
|
||||
"generatedSubQueries": "Geradas {count} subconsultas",
|
||||
"insightForgeComplete": "InsightForge concluído: {facts} fatos, {entities} entidades, {relationships} relacionamentos",
|
||||
"generateSubQueriesFailed": "Falha ao gerar subconsultas: {error}, usando padrões",
|
||||
"panoramaSearchStart": "PanoramaSearch - busca ampla: {query}...",
|
||||
"panoramaSearchComplete": "PanoramaSearch concluído: {active} ativos, {historical} históricos",
|
||||
"quickSearchStart": "QuickSearch - busca simples: {query}...",
|
||||
"quickSearchComplete": "QuickSearch concluído: {count} resultados",
|
||||
"interviewAgentsStart": "InterviewAgents - entrevista profunda (API real): {requirement}...",
|
||||
"profilesNotFound": "Perfis não encontrados para a simulação {simId}",
|
||||
"loadedProfiles": "Carregados {count} perfis de agentes",
|
||||
"selectedAgentsForInterview": "Selecionados {count} agentes para entrevista: {indices}",
|
||||
"generatedInterviewQuestions": "Geradas {count} perguntas de entrevista",
|
||||
"callingBatchInterviewApi": "Chamando API de entrevista em lote (plataforma dupla): {count} agentes",
|
||||
"interviewApiReturned": "API de entrevista retornou: {count} resultados, success={success}",
|
||||
"interviewApiReturnedFailure": "API de entrevista retornou falha: {error}",
|
||||
"interviewApiCallFailed": "Chamada à API de entrevista falhou (ambiente não está em execução?): {error}",
|
||||
"interviewApiCallException": "Exceção na chamada à API de entrevista: {error}",
|
||||
"interviewAgentsComplete": "InterviewAgents concluído: entrevistados {count} agentes (plataforma dupla)",
|
||||
"loadedRedditProfiles": "Carregados {count} perfis de reddit_profiles.json",
|
||||
"readRedditProfilesFailed": "Falha ao ler reddit_profiles.json: {error}",
|
||||
"loadedTwitterProfiles": "Carregados {count} perfis de twitter_profiles.csv",
|
||||
"readTwitterProfilesFailed": "Falha ao ler twitter_profiles.csv: {error}",
|
||||
"llmSelectAgentFailed": "Seleção de agente pelo LLM falhou, usando seleção padrão: {error}",
|
||||
"generateInterviewQuestionsFailed": "Falha ao gerar perguntas de entrevista: {error}",
|
||||
"generateInterviewSummaryFailed": "Falha ao gerar resumo da entrevista: {error}"
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,665 @@
|
|||
{
|
||||
"common": {
|
||||
"confirm": "Confirmar",
|
||||
"cancel": "Cancelar",
|
||||
"loading": "A carregar...",
|
||||
"error": "Erro",
|
||||
"success": "Sucesso",
|
||||
"completed": "Concluído",
|
||||
"processing": "A gerar",
|
||||
"pending": "Pendente",
|
||||
"ready": "Pronto",
|
||||
"running": "A executar",
|
||||
"failed": "Falhou",
|
||||
"unknown": "Desconhecido",
|
||||
"unknownError": "Erro desconhecido",
|
||||
"none": "Nenhum",
|
||||
"close": "Fechar",
|
||||
"back": "Voltar",
|
||||
"next": "Seguinte",
|
||||
"retry": "Tentar novamente",
|
||||
"noData": "Nenhum dado disponível",
|
||||
"hours": "horas",
|
||||
"minutes": "minutos",
|
||||
"rounds": "rondas",
|
||||
"items": "itens",
|
||||
"files": "ficheiros"
|
||||
},
|
||||
"meta": {
|
||||
"title": "MiroFish - Prevê Tudo",
|
||||
"description": "MiroFish - Sistema de Simulação de Opinião em Redes Sociais"
|
||||
},
|
||||
"nav": {
|
||||
"visitGithub": "Visite a nossa página no Github"
|
||||
},
|
||||
"home": {
|
||||
"tagline": "Motor Conciso e Universal de Inteligência de Enxame",
|
||||
"version": "/ v0.1-Preview",
|
||||
"heroTitle1": "Carregue Relatórios,",
|
||||
"heroTitle2": "Preveja o Futuro",
|
||||
"heroDesc": "A partir de um único documento, o {brand} extrai sementes de realidade para gerar automaticamente um mundo paralelo com até {agentScale}. Injete variáveis com uma visão divina para encontrar o {optimalSolution} em dinâmicas de grupo complexas.",
|
||||
"heroDescBrand": "MiroFish",
|
||||
"heroDescAgentScale": "milhões de Agentes",
|
||||
"heroDescOptimalSolution": "\"ótimo local\"",
|
||||
"slogan": "Deixe que os Agentes ensaiem o futuro, deixe que as decisões prevaleçam",
|
||||
"systemStatus": "Estado do Sistema",
|
||||
"systemReady": "Pronto",
|
||||
"systemReadyDesc": "Motor de predição em espera. Carregue dados não estruturados para inicializar uma sequência de simulação.",
|
||||
"metricLowCost": "Baixo Custo",
|
||||
"metricLowCostDesc": "Média de 5 $/simulação",
|
||||
"metricHighAvail": "Escalável",
|
||||
"metricHighAvailDesc": "Milhões de Agentes",
|
||||
"workflowSequence": "Fluxo de Trabalho",
|
||||
"step01Title": "Construção do Grafo",
|
||||
"step01Desc": "Extração de sementes, injeção de memória e construção de GraphRAG",
|
||||
"step02Title": "Configuração do Ambiente",
|
||||
"step02Desc": "Extração de entidades, geração de personas e injeção de configuração de Agentes",
|
||||
"step03Title": "Simulação",
|
||||
"step03Desc": "Simulação paralela em duas plataformas, análise automática de requisitos e memória temporal",
|
||||
"step04Title": "Relatório",
|
||||
"step04Desc": "O ReportAgent interage com o ambiente pós-simulação através de ferramentas avançadas",
|
||||
"step05Title": "Interação",
|
||||
"step05Desc": "Converse com qualquer indivíduo simulado e dialogue com o ReportAgent",
|
||||
"realitySeed": "01 / Semente da Realidade",
|
||||
"supportedFormats": "Formatos: PDF, MD, TXT",
|
||||
"dragToUpload": "Arraste ficheiros para carregar",
|
||||
"orBrowse": "ou clique para procurar ficheiros",
|
||||
"inputParams": "Parâmetros de Entrada",
|
||||
"simulationPrompt": ">_ 02 / Prompt de Simulação",
|
||||
"promptPlaceholder": "// Descreva o seu requisito de simulação ou predição em linguagem natural",
|
||||
"engineBadge": "Motor: MiroFish-V1.0",
|
||||
"startEngine": "Iniciar Motor",
|
||||
"initializing": "A inicializar..."
|
||||
},
|
||||
"main": {
|
||||
"layoutGraph": "Grafo",
|
||||
"layoutSplit": "Dividido",
|
||||
"layoutWorkbench": "Bancada",
|
||||
"stepNames": ["Construção do Grafo", "Configuração do Ambiente", "Executar Simulação", "Geração do Relatório", "Interação Profunda"]
|
||||
},
|
||||
"step1": {
|
||||
"ontologyGeneration": "Geração de Ontologia",
|
||||
"ontologyCompleted": "Concluído",
|
||||
"ontologyGenerating": "A gerar",
|
||||
"ontologyPending": "Pendente",
|
||||
"ontologyDesc": "O LLM analisa o conteúdo do documento e os requisitos da simulação, extrai sementes de realidade e gera automaticamente uma estrutura de ontologia adequada",
|
||||
"analyzingDocs": "A analisar documentos...",
|
||||
"graphRagBuild": "Construção do GraphRAG",
|
||||
"graphRagDesc": "Com base na ontologia gerada, os documentos são automaticamente divididos em chunks e enviados ao Zep para construir um grafo de conhecimento, extraindo entidades e relações, formando memória temporal e resumos de comunidades",
|
||||
"entityNodes": "Nós de Entidade",
|
||||
"relationEdges": "Arestas de Relação",
|
||||
"schemaTypes": "Tipos de Schema",
|
||||
"buildComplete": "Construção Concluída",
|
||||
"buildCompleteDesc": "A construção do grafo foi concluída. Avance para o próximo passo para configurar o ambiente de simulação.",
|
||||
"inProgress": "Em Curso",
|
||||
"creating": "A criar...",
|
||||
"enterEnvSetup": "Entrar na Configuração do Ambiente",
|
||||
"createSimulationFailed": "Falha ao criar simulação: {error}",
|
||||
"createSimulationException": "Erro na criação da simulação: {error}"
|
||||
},
|
||||
"step2": {
|
||||
"simInstanceInit": "Inicialização da Instância de Simulação",
|
||||
"simInstanceDesc": "Cria uma nova instância de simulação e carrega modelos de parâmetros do mundo",
|
||||
"asyncTaskDone": "Tarefa assíncrona concluída",
|
||||
"generateAgentPersona": "Gerar Personas de Agentes",
|
||||
"generateAgentPersonaDesc": "Combina o contexto para extrair automaticamente entidades e relações do grafo de conhecimento, inicializa indivíduos simulados e atribui comportamentos e memórias únicos com base nas sementes de realidade",
|
||||
"currentAgentCount": "Agentes Atuais",
|
||||
"expectedAgentTotal": "Total Esperado de Agentes",
|
||||
"relatedTopicsCount": "Tópicos Relacionados com a Semente de Realidade",
|
||||
"generatedAgentPersonas": "Personas de Agentes Geradas",
|
||||
"unknownProfession": "Profissão desconhecida",
|
||||
"noBio": "Nenhuma biografia disponível",
|
||||
"dualPlatformConfig": "Gerar Configuração Dupla de Plataforma",
|
||||
"dualPlatformConfigDesc": "O LLM define de forma inteligente o fluxo de tempo do mundo, algoritmos de recomendação, horários ativos de cada indivíduo, frequência de publicações, desencadeadores de eventos e muito mais, com base nos requisitos e nas sementes de realidade",
|
||||
"simulationDuration": "Duração da Simulação",
|
||||
"roundDuration": "Duração da Ronda",
|
||||
"totalRounds": "Total de Rondas",
|
||||
"activePerHour": "Ativos por Hora",
|
||||
"peakHours": "Horários de Pico",
|
||||
"workHours": "Horário de Trabalho",
|
||||
"morningHours": "Horário Matinal",
|
||||
"offPeakHours": "Horários Fora do Pico",
|
||||
"agentConfig": "Configuração do Agente",
|
||||
"activeTimePeriod": "Horários Ativos",
|
||||
"postsPerHour": "Publicações/h",
|
||||
"commentsPerHour": "Comentários/h",
|
||||
"responseDelay": "Atraso de Resposta",
|
||||
"activityLevel": "Nível de Atividade",
|
||||
"sentimentBias": "Viés de Sentimento",
|
||||
"influenceWeight": "Influência",
|
||||
"recommendAlgoConfig": "Configuração do Algoritmo de Recomendação",
|
||||
"platform1Name": "Plataforma 1: Praça / Feed",
|
||||
"platform2Name": "Plataforma 2: Tópico / Comunidade",
|
||||
"recencyWeight": "Peso de Recência",
|
||||
"popularityWeight": "Peso de Popularidade",
|
||||
"relevanceWeight": "Peso de Relevância",
|
||||
"viralThreshold": "Limiar de Viralização",
|
||||
"echoChamberStrength": "Força da Câmara de Eco",
|
||||
"llmConfigReasoning": "Raciocínio de Configuração do LLM",
|
||||
"initialActivation": "Orquestração da Ativação Inicial",
|
||||
"initialActivationDesc": "Gera automaticamente eventos de ativação inicial e tópicos em destaque com base na direção narrativa para orientar o estado inicial do mundo da simulação",
|
||||
"orchestrating": "A orquestrar",
|
||||
"narrativeDirection": "Direção Narrativa",
|
||||
"initialHotTopics": "Tópicos Iniciais em Destaque",
|
||||
"initialActivationSeq": "Sequência de Ativação Inicial ({count})",
|
||||
"setupComplete": "Configuração Concluída",
|
||||
"setupCompleteDesc": "O ambiente de simulação está pronto. Agora pode iniciar a simulação.",
|
||||
"roundsConfig": "Configuração de Rondas da Simulação",
|
||||
"roundsConfigDesc": "O MiroFish planeia automaticamente simular {hours} horas do mundo real, com cada ronda a representar {minutesPerRound} minutos de tempo decorrido",
|
||||
"customToggle": "Personalizado",
|
||||
"roundsUnit": "rondas",
|
||||
"estimatedDuration": "Para 100 Agentes: estimativa de ~{minutes} minutos",
|
||||
"estimatedDurationFull": "Para 100 Agentes: estimativa de {minutes} minutos",
|
||||
"recommendedRounds": "{rounds} (recomendado)",
|
||||
"customTip": "Para primeiras execuções, recomendamos vivamente alternar para o 'Modo Personalizado' e reduzir as rondas para uma pré-visualização rápida e menor risco de erros",
|
||||
"backToGraphBuild": "Voltar à Construção do Grafo",
|
||||
"startDualWorldSim": "Iniciar Simulação Paralela em Dois Mundos",
|
||||
"profileModalAge": "Idade Aparente",
|
||||
"profileModalGender": "Género Aparente",
|
||||
"profileModalCountry": "País/Região",
|
||||
"profileModalMbti": "MBTI Aparente",
|
||||
"profileModalBio": "Biografia da Persona",
|
||||
"profileModalTopics": "Tópicos Relacionados com a Semente de Realidade",
|
||||
"profileModalPersona": "Historial Detalhado da Persona",
|
||||
"personaDimExperience": "Experiência Completa do Evento",
|
||||
"personaDimExperienceDesc": "Trajetória comportamental completa neste evento",
|
||||
"personaDimBehavior": "Perfil Comportamental",
|
||||
"personaDimBehaviorDesc": "Resumo de experiências e preferências comportamentais",
|
||||
"personaDimMemory": "Impressão de Memória Única",
|
||||
"personaDimMemoryDesc": "Memórias formadas a partir de sementes de realidade",
|
||||
"personaDimSocial": "Rede Social",
|
||||
"personaDimSocialDesc": "Ligações individuais e grafo de interação",
|
||||
"genderMale": "Masculino",
|
||||
"genderFemale": "Feminino",
|
||||
"genderOther": "Outro",
|
||||
"yearsOld": "anos",
|
||||
"initializing": "A inicializar",
|
||||
"generating": "A gerar"
|
||||
},
|
||||
"step3": {
|
||||
"startGenerateReport": "Gerar Relatório",
|
||||
"generatingReport": "A iniciar...",
|
||||
"waitingForActions": "A aguardar ações dos agentes...",
|
||||
"errorMissingSimId": "Erro: simulationId em falta",
|
||||
"startingDualSim": "A iniciar simulação paralela em duas plataformas...",
|
||||
"graphMemoryUpdateEnabled": "Atualização dinâmica de memória do grafo ativada",
|
||||
"setMaxRounds": "Máximo de rondas de simulação definido em: {rounds}",
|
||||
"oldSimCleared": "Logs antigos de simulação limpos, a reiniciar simulação",
|
||||
"engineStarted": "Motor de simulação iniciado com sucesso",
|
||||
"startFailed": "Falha ao iniciar: {error}",
|
||||
"startException": "Erro ao iniciar: {error}",
|
||||
"stoppingSim": "A parar simulação...",
|
||||
"simStopped": "Simulação parada",
|
||||
"stopFailed": "Falha ao parar: {error}",
|
||||
"stopException": "Erro ao parar: {error}",
|
||||
"allPlatformsCompleted": "Todas as simulações de plataforma terminaram",
|
||||
"simCompleted": "Simulação concluída",
|
||||
"graphRealtimeRefresh": "Atualização em tempo real do grafo ativada (30s)",
|
||||
"graphRefreshStopped": "Atualização em tempo real do grafo interrompida",
|
||||
"preparingGoBack": "A preparar o regresso ao Passo 2, a encerrar simulação...",
|
||||
"closingSimEnv": "A encerrar ambiente de simulação...",
|
||||
"simEnvClosed": "Ambiente de simulação encerrado",
|
||||
"closeFailed": "Falha ao encerrar o ambiente de simulação, a tentar paragem forçada...",
|
||||
"stoppingProcess": "A parar processo de simulação...",
|
||||
"checkStatusFailed": "Falha ao verificar estado da simulação: {error}",
|
||||
"forceStopSuccess": "Simulação parada à força",
|
||||
"forceStopFailed": "Paragem forçada falhou: {error}",
|
||||
"startGenerateReportBtn": "Gerar Relatório",
|
||||
"generatingReportBtn": "A iniciar..."
|
||||
},
|
||||
"step4": {
|
||||
"generatingSection": "A gerar {title}...",
|
||||
"goToInteraction": "Entrar na Interação Profunda",
|
||||
"waitingForReportAgent": "A aguardar o Report Agent...",
|
||||
"collapse": "Recolher ▲",
|
||||
"expandAll": "Mostrar todos os {count} ▼",
|
||||
"expandAllEntities": "Mostrar todas as {count} ▼",
|
||||
"scenarioLabel": "Cenário: ",
|
||||
"tabKeyFacts": "Factos Principais ({count})",
|
||||
"tabCoreEntities": "Entidades Centrais ({count})",
|
||||
"tabRelationChains": "Cadeias de Relação ({count})",
|
||||
"tabSubQueries": "Subconsultas ({count})",
|
||||
"panelKeyFacts": "Factos principais mais recentes da memória temporal",
|
||||
"totalCount": "{count} no total",
|
||||
"totalEntityCount": "{count} no total",
|
||||
"panelCoreEntities": "Entidades Centrais",
|
||||
"factCount": "{count} factos",
|
||||
"panelRelationChains": "Cadeias de Relação",
|
||||
"panelSubQueries": "Subperguntas de análise de consulta de desvio",
|
||||
"emptyKeyFacts": "Nenhum facto principal disponível",
|
||||
"emptyCoreEntities": "Nenhuma entidade central disponível",
|
||||
"emptyRelationChains": "Nenhuma cadeia de relação disponível",
|
||||
"tabActiveFacts": "Factos Ativos ({count})",
|
||||
"tabHistoricalFacts": "Factos Históricos ({count})",
|
||||
"tabEntities": "Entidades ({count})",
|
||||
"panelActiveFacts": "Factos Ativos",
|
||||
"emptyActiveFacts": "Nenhum facto ativo disponível",
|
||||
"panelHistoricalFacts": "Factos Históricos",
|
||||
"emptyHistoricalFacts": "Nenhum facto histórico disponível",
|
||||
"panelEntities": "Entidades",
|
||||
"emptyEntities": "Nenhuma entidade disponível",
|
||||
"searchLabel": "Pesquisar: ",
|
||||
"tabFacts": "Factos ({count})",
|
||||
"tabEdges": "Arestas ({count})",
|
||||
"tabNodes": "Nós ({count})",
|
||||
"panelSearchResults": "Resultados da Pesquisa",
|
||||
"emptySearchResults": "Nenhum resultado encontrado",
|
||||
"panelRelatedEdges": "Arestas Relacionadas",
|
||||
"panelRelatedNodes": "Nós Relacionados",
|
||||
"world1": "Mundo 1",
|
||||
"world2": "Mundo 2"
|
||||
},
|
||||
"step5": {
|
||||
"interactiveTools": "Ferramentas Interativas",
|
||||
"agentsAvailable": "{count} agentes disponíveis",
|
||||
"chatWithReportAgent": "Conversar com o Report Agent",
|
||||
"chatWithAgent": "Converse com qualquer indivíduo do mundo",
|
||||
"selectChatTarget": "Selecionar alvo da conversa",
|
||||
"sendSurvey": "Enviar inquérito ao mundo",
|
||||
"reportAgentChat": "Report Agent - Conversa",
|
||||
"reportAgentDesc": "Uma versão conversacional do agente gerador de relatórios com acesso a 4 ferramentas profissionais e à memória completa do MiroFish",
|
||||
"toolInsightForge": "InsightForge - Atribuição Profunda",
|
||||
"toolInsightForgeDesc": "Alinha dados reais das sementes com o estado da simulação, combinando Memória Global/Local para análise de atribuição profunda entre períodos temporais",
|
||||
"toolPanoramaSearch": "PanoramaSearch - Rastreio Completo",
|
||||
"toolPanoramaSearchDesc": "Algoritmo de pesquisa em largura (BFS) baseado em grafo que reconstrói caminhos de propagação de eventos, capturando a topologia completa do fluxo de informação",
|
||||
"toolQuickSearch": "QuickSearch - Obtenção Rápida",
|
||||
"toolQuickSearchDesc": "Interface de consulta instantânea baseada em GraphRAG com indexação otimizada para extração rápida de atributos de nós e factos discretos",
|
||||
"toolInterviewSubAgent": "InterviewSubAgent - Entrevista Virtual",
|
||||
"toolInterviewSubAgentDesc": "Entrevistas autónomas que conduzem diálogos paralelos em múltiplas rondas com indivíduos simulados, recolhendo dados de opinião não estruturados e estados psicológicos",
|
||||
"profileBio": "Biografia",
|
||||
"chatEmptyReportAgent": "Converse com o Report Agent para explorar o conteúdo do relatório em profundidade",
|
||||
"chatEmptyAgent": "Converse com indivíduos simulados para compreender as suas perspetivas",
|
||||
"chatInputPlaceholder": "Escreva a sua pergunta...",
|
||||
"selectSurveyTarget": "Selecionar alvos do inquérito",
|
||||
"selectedCount": "Selecionados {selected} / {total}",
|
||||
"surveyQuestions": "Perguntas do Inquérito",
|
||||
"surveyInputPlaceholder": "Escreva a pergunta que pretende fazer a todos os alvos selecionados...",
|
||||
"submitSurvey": "Enviar Inquérito",
|
||||
"surveyResults": "Resultados do Inquérito",
|
||||
"surveyResultsCount": "{count} respostas",
|
||||
"selectAll": "Selecionar Tudo",
|
||||
"clearSelection": "Limpar",
|
||||
"errorOccurred": "Lamentamos, ocorreu um erro: {error}",
|
||||
"noResponse": "Sem resposta",
|
||||
"requestFailed": "Pedido falhou",
|
||||
"selectAgentFirst": "Por favor, selecione primeiro um indivíduo simulado"
|
||||
},
|
||||
"graph": {
|
||||
"panelTitle": "Visualização de Relações do Grafo",
|
||||
"refreshGraph": "Atualizar Grafo",
|
||||
"graphMemoryRealtime": "Memória de curto/longo prazo do GraphRAG a atualizar em tempo real",
|
||||
"realtimeUpdating": "A atualizar em tempo real...",
|
||||
"pendingContentHint": "Parte do conteúdo ainda está a ser processado. Considere atualizar o grafo manualmente mais tarde.",
|
||||
"nodeDetails": "Detalhes do Nó",
|
||||
"relationship": "Relação",
|
||||
"graphDataLoading": "A carregar dados do grafo...",
|
||||
"waitingOntology": "A aguardar geração da ontologia...",
|
||||
"toggleMaximize": "Maximizar/Restaurar",
|
||||
"closeHint": "Fechar sugestão"
|
||||
},
|
||||
"history": {
|
||||
"title": "Histórico de Simulações",
|
||||
"graphBuild": "Construção do Grafo",
|
||||
"envSetup": "Configuração do Ambiente",
|
||||
"analysisReport": "Relatório de Análise",
|
||||
"moreFiles": "+{count} ficheiros",
|
||||
"noFiles": "Sem ficheiros",
|
||||
"loadingText": "A carregar...",
|
||||
"simRequirement": "Requisito da Simulação",
|
||||
"relatedFiles": "Ficheiros Relacionados",
|
||||
"noRelatedFiles": "Nenhum ficheiro relacionado",
|
||||
"replayTitle": "Repetição da Simulação",
|
||||
"step1Button": "Construção do Grafo",
|
||||
"step2Button": "Configuração do Ambiente",
|
||||
"step4Button": "Relatório de Análise",
|
||||
"replayHint": "O Passo 3 'Executar Simulação' e o Passo 5 'Interação Profunda' têm de ser iniciados em tempo de execução e não suportam repetição de histórico",
|
||||
"notStarted": "Não iniciado",
|
||||
"roundsProgress": "{current}/{total} rondas",
|
||||
"untitledSimulation": "Simulação sem título",
|
||||
"unknownFile": "Ficheiro desconhecido"
|
||||
},
|
||||
"api": {
|
||||
"projectNotFound": "Projeto não encontrado: {id}",
|
||||
"projectDeleteFailed": "Projeto não encontrado ou falha na eliminação: {id}",
|
||||
"projectDeleted": "Projeto eliminado: {id}",
|
||||
"projectReset": "Projeto reposto: {id}",
|
||||
"requireSimulationRequirement": "Por favor, forneça um requisito de simulação (simulation_requirement)",
|
||||
"requireFileUpload": "Por favor, carregue pelo menos um ficheiro de documento",
|
||||
"noDocProcessed": "Nenhum documento foi processado com sucesso. Verifique os formatos dos ficheiros.",
|
||||
"requireProjectId": "Por favor, forneça project_id",
|
||||
"configError": "Erro de configuração: {details}",
|
||||
"zepApiKeyMissing": "ZEP_API_KEY não configurada",
|
||||
"ontologyNotGenerated": "Ontologia ainda não gerada. Chame /ontology/generate primeiro.",
|
||||
"graphBuilding": "Construção do grafo em curso. Não reenvie. Para forçar reconstrução, adicione force: true.",
|
||||
"textNotFound": "Conteúdo de texto extraído não encontrado",
|
||||
"ontologyNotFound": "Definição da ontologia não encontrada",
|
||||
"graphBuildStarted": "Tarefa de construção do grafo iniciada. Consulte o progresso em /task/{taskId}.",
|
||||
"graphBuildComplete": "Construção do grafo concluída",
|
||||
"buildFailed": "Falha na construção: {error}",
|
||||
"taskNotFound": "Tarefa não encontrada: {id}",
|
||||
"graphDeleted": "Grafo eliminado: {id}",
|
||||
"entityNotFound": "Entidade não encontrada: {id}",
|
||||
"graphNotBuilt": "Grafo ainda não construído. Chame /api/graph/build primeiro.",
|
||||
"requireSimulationId": "Por favor, forneça simulation_id",
|
||||
"simulationNotFound": "Simulação não encontrada: {id}",
|
||||
"projectMissingRequirement": "O projeto não possui requisito de simulação (simulation_requirement)",
|
||||
"prepareStarted": "Tarefa de preparação iniciada. Consulte o progresso em /api/simulation/prepare/status.",
|
||||
"alreadyPrepared": "Preparação já concluída. Não é necessário regenerar.",
|
||||
"notStartedPrepare": "Preparação não iniciada. Chame /api/simulation/prepare.",
|
||||
"taskCompletedPrepared": "Tarefa concluída (preparação já existente)",
|
||||
"requireTaskOrSimId": "Por favor, forneça task_id ou simulation_id",
|
||||
"configNotFound": "Configuração da simulação não encontrada. Chame /prepare primeiro.",
|
||||
"configFileNotFound": "Ficheiro de configuração não encontrado. Chame /prepare primeiro.",
|
||||
"unknownScript": "Script desconhecido: {name}. Disponíveis: {allowed}",
|
||||
"scriptFileNotFound": "Ficheiro de script não encontrado: {name}",
|
||||
"requireGraphId": "Por favor, forneça graph_id",
|
||||
"noMatchingEntities": "Nenhuma entidade correspondente encontrada",
|
||||
"maxRoundsPositive": "max_rounds tem de ser um inteiro positivo",
|
||||
"maxRoundsInvalid": "max_rounds tem de ser um inteiro válido",
|
||||
"invalidPlatform": "Tipo de plataforma inválido: {platform}. Opções: twitter/reddit/parallel",
|
||||
"simRunningForceHint": "A simulação está em execução. Pare-a primeiro via /stop, ou utilize force=true para reiniciar.",
|
||||
"simNotReady": "Simulação não está pronta. Estado atual: {status}. Chame /prepare primeiro.",
|
||||
"graphIdRequiredForMemory": "A atualização de memória do grafo requer um graph_id válido. Garanta que o grafo está construído.",
|
||||
"dbNotExist": "A base de dados não existe. A simulação pode ainda não ter sido executada.",
|
||||
"requireMessage": "Por favor, forneça uma mensagem",
|
||||
"missingGraphId": "ID do grafo em falta",
|
||||
"missingGraphIdEnsure": "ID do grafo em falta. Certifique-se de que o grafo foi construído.",
|
||||
"missingSimRequirement": "Descrição do requisito de simulação em falta",
|
||||
"reportAlreadyExists": "O relatório já existe",
|
||||
"reportGenerateStarted": "Tarefa de geração de relatório iniciada. Consulte o progresso em /api/report/generate/status.",
|
||||
"reportGenerated": "Relatório gerado",
|
||||
"reportNotFound": "Relatório não encontrado: {id}",
|
||||
"noReportForSim": "Nenhum relatório encontrado para esta simulação: {id}",
|
||||
"reportDeleted": "Relatório eliminado: {id}",
|
||||
"reportGenerateFailed": "Geração de relatório falhou",
|
||||
"sectionNotFound": "Secção não encontrada: section_{index}.md",
|
||||
"reportProgressNotAvail": "Relatório não encontrado ou progresso indisponível: {id}",
|
||||
"requireAgentId": "Por favor, forneça agent_id",
|
||||
"requirePrompt": "Por favor, forneça um prompt (pergunta da entrevista)",
|
||||
"invalidInterviewPlatform": "A plataforma tem de ser 'twitter' ou 'reddit'",
|
||||
"envNotRunning": "Ambiente de simulação não está em execução ou foi encerrado. Garanta que a simulação está concluída e em modo de espera por comando.",
|
||||
"interviewTimeout": "Tempo esgotado para resposta da entrevista: {error}",
|
||||
"requireInterviews": "Por favor, forneça interviews (lista de entrevistas)",
|
||||
"interviewListMissingAgentId": "Item {index} da lista de entrevistas sem agent_id",
|
||||
"interviewListMissingPrompt": "Item {index} da lista de entrevistas sem prompt",
|
||||
"interviewListInvalidPlatform": "A plataforma do item {index} da lista de entrevistas tem de ser 'twitter' ou 'reddit'",
|
||||
"batchInterviewTimeout": "Tempo esgotado para resposta em lote de entrevistas: {error}",
|
||||
"globalInterviewTimeout": "Tempo esgotado para resposta global de entrevistas: {error}",
|
||||
"envRunning": "Ambiente em execução e pronto para comandos de Entrevista",
|
||||
"envNotRunningShort": "Ambiente não está em execução ou foi encerrado",
|
||||
"requireGraphIdAndQuery": "Por favor, forneça graph_id e query",
|
||||
"initReportAgent": "A inicializar o Report Agent..."
|
||||
},
|
||||
"progress": {
|
||||
"initGraphService": "A inicializar serviço de construção do grafo...",
|
||||
"textChunking": "A dividir texto em chunks...",
|
||||
"creatingZepGraph": "A criar grafo no Zep...",
|
||||
"settingOntology": "A definir a ontologia...",
|
||||
"addingChunks": "A adicionar {count} chunks de texto...",
|
||||
"waitingZepProcess": "A aguardar que o Zep processe os dados...",
|
||||
"fetchingGraphData": "A obter dados do grafo...",
|
||||
"graphBuildComplete": "Construção do grafo concluída",
|
||||
"buildFailed": "Falha na construção: {error}",
|
||||
"startBuildingGraph": "A iniciar construção do grafo...",
|
||||
"graphCreated": "Grafo criado: {graphId}",
|
||||
"ontologySet": "Ontologia definida",
|
||||
"textSplit": "Texto dividido em {count} chunks",
|
||||
"fetchingGraphInfo": "A obter informações do grafo...",
|
||||
"sendingBatch": "A enviar lote {current}/{total} ({chunks} chunks)...",
|
||||
"batchFailed": "Lote {batch} falhou: {error}",
|
||||
"noEpisodesWait": "Nenhum episódio para aguardar",
|
||||
"waitingEpisodes": "A aguardar o processamento de {count} chunks de texto...",
|
||||
"episodesTimeout": "Alguns chunks excederam o tempo limite, {completed}/{total} concluídos",
|
||||
"zepProcessing": "Zep a processar... {completed}/{total} concluídos, {pending} pendentes ({elapsed}s)",
|
||||
"processingComplete": "Processamento concluído: {completed}/{total}",
|
||||
"taskComplete": "Tarefa concluída",
|
||||
"taskFailed": "Tarefa falhou",
|
||||
"startPreparingEnv": "A preparar ambiente de simulação...",
|
||||
"connectingZepGraph": "A ligar ao grafo do Zep...",
|
||||
"readingNodeData": "A ler dados dos nós...",
|
||||
"readingComplete": "Concluído, {count} entidades encontradas",
|
||||
"startGenerating": "A iniciar geração...",
|
||||
"analyzingRequirements": "A analisar requisitos da simulação...",
|
||||
"generatingOutline": "A gerar estrutura do relatório...",
|
||||
"parsingOutline": "A analisar a estrutura...",
|
||||
"outlinePlanComplete": "Planeamento da estrutura concluído",
|
||||
"deepSearchAndWrite": "Pesquisa profunda e redação ({current}/{max})",
|
||||
"initReport": "A inicializar relatório...",
|
||||
"startPlanningOutline": "A planear estrutura do relatório...",
|
||||
"outlineDone": "Estrutura concluída, {count} secções",
|
||||
"generatingSection": "A gerar secção: {title} ({current}/{total})",
|
||||
"sectionDone": "Secção {title} concluída",
|
||||
"assemblingReport": "A montar relatório completo...",
|
||||
"reportComplete": "Geração do relatório concluída",
|
||||
"reportFailed": "Falha na geração do relatório: {error}",
|
||||
"savingProfiles": "A guardar ficheiros de perfil...",
|
||||
"profilesComplete": "Concluído, {count} perfis gerados",
|
||||
"callingLLMConfig": "A chamar o LLM para gerar configuração...",
|
||||
"savingConfigFiles": "A guardar ficheiros de configuração...",
|
||||
"configComplete": "Geração de configuração concluída",
|
||||
"generatingTimeConfig": "A gerar configuração de tempo...",
|
||||
"generatingEventConfig": "A gerar configuração de eventos e tópicos em destaque...",
|
||||
"generatingAgentConfig": "A gerar configuração de agentes ({start}-{end}/{total})...",
|
||||
"generatingPlatformConfig": "A gerar configuração de plataforma...",
|
||||
"zepSearchQuery": "Toda a informação, atividades, eventos, relações e contexto sobre {name}",
|
||||
"timeConfigLabel": "Configuração de Tempo",
|
||||
"eventConfigLabel": "Configuração de Eventos",
|
||||
"agentConfigResult": "Configuração de Agentes: {count} gerados",
|
||||
"postAssignResult": "Atribuição de Publicações: {count} publicações atribuídas",
|
||||
"profileGenerated": "[Gerado] {name} ({type})",
|
||||
"readingGraphEntities": "A Ler Entidades do Grafo",
|
||||
"generatingProfiles": "A Gerar Perfis de Agentes",
|
||||
"generatingSimConfig": "A Gerar Configuração da Simulação",
|
||||
"preparingScripts": "A Preparar Scripts"
|
||||
},
|
||||
"log": {
|
||||
"preparingGoBack": "A preparar o regresso ao Passo 2, a encerrar simulação...",
|
||||
"closingSimEnv": "A encerrar ambiente de simulação...",
|
||||
"simEnvClosed": "✓ Ambiente de simulação encerrado",
|
||||
"closeSimEnvFailed": "Falha ao encerrar o ambiente de simulação, a tentar paragem forçada...",
|
||||
"simForceStopSuccess": "✓ Simulação parada à força",
|
||||
"forceStopFailed": "Paragem forçada falhou: {error}",
|
||||
"stoppingSimProcess": "A parar processo de simulação...",
|
||||
"simStopped": "✓ Simulação parada",
|
||||
"stopSimFailed": "Falha ao parar a simulação: {error}",
|
||||
"checkStatusFailed": "Falha ao verificar estado da simulação: {error}",
|
||||
"enterStep4": "A entrar no Passo 4: Geração do Relatório",
|
||||
"loadingSimData": "A carregar dados da simulação: {id}",
|
||||
"timeConfig": "Configuração de tempo: {minutes} minutos por ronda",
|
||||
"timeConfigFetchFailed": "Falha ao obter configuração de tempo, a usar predefinição: {minutes} min/ronda",
|
||||
"projectLoadSuccess": "Projeto carregado: {id}",
|
||||
"loadSimDataFailed": "Falha ao carregar dados da simulação: {error}",
|
||||
"loadException": "Erro ao carregar: {error}",
|
||||
"graphDataLoadSuccess": "Dados do grafo carregados com sucesso",
|
||||
"graphLoadFailed": "Falha ao carregar o grafo: {error}",
|
||||
"graphRealtimeRefreshStart": "Atualização em tempo real do grafo ativada (30s)",
|
||||
"graphRealtimeRefreshStop": "Atualização em tempo real do grafo interrompida",
|
||||
"simRunViewInit": "SimulationRunView inicializado",
|
||||
"customRounds": "Rondas personalizadas de simulação: {rounds}",
|
||||
"enterStep3": "A entrar no Passo 3: Executar Simulação",
|
||||
"customRoundsConfig": "Rondas personalizadas de simulação: {rounds} rondas",
|
||||
"useAutoRounds": "A usar rondas de simulação configuradas automaticamente",
|
||||
"detectedSimEnvRunning": "Detetado ambiente de simulação em execução, a encerrar...",
|
||||
"closeSimEnvFailedWithError": "Falha ao encerrar ambiente de simulação: {error}",
|
||||
"closeSimEnvException": "Erro no encerramento do ambiente de simulação: {error}",
|
||||
"detectedSimRunning": "Detetada simulação em execução, a parar...",
|
||||
"forceStopSimFailed": "Paragem forçada da simulação falhou: {error}",
|
||||
"forceStopSimException": "Erro na paragem forçada da simulação: {error}",
|
||||
"simViewInit": "SimulationView inicializado",
|
||||
"errorMissingSimId": "Erro: simulationId em falta",
|
||||
"simInstanceCreated": "Instância de simulação criada: {id}",
|
||||
"preparingSimEnv": "A preparar ambiente de simulação...",
|
||||
"detectedExistingPrep": "Detetada preparação existente, a utilizá-la diretamente",
|
||||
"prepareTaskStarted": "Tarefa de preparação iniciada",
|
||||
"prepareTaskId": " └─ ID da Tarefa: {taskId}",
|
||||
"zepEntitiesFound": "Encontradas {count} entidades no grafo do Zep",
|
||||
"entityTypes": " └─ Tipos de entidade: {types}",
|
||||
"startPollingProgress": "A consultar progresso da preparação...",
|
||||
"prepareFailed": "Preparação falhou: {error}",
|
||||
"prepareException": "Erro na preparação: {error}",
|
||||
"prepareComplete": "✓ Preparação concluída",
|
||||
"prepareFailedWithError": "✗ Preparação falhou: {error}",
|
||||
"startGeneratingConfig": "A gerar configuração de simulação de dupla plataforma...",
|
||||
"generatingAgentProfileConfig": "A gerar configuração de personas de agentes...",
|
||||
"generatingLLMConfig": "A chamar o LLM para gerar parâmetros de configuração da simulação...",
|
||||
"configComplete": "✓ Configuração da simulação gerada",
|
||||
"configSummaryAgents": " ├─ Agentes: {count}",
|
||||
"configSummaryHours": " ├─ Duração: {hours} horas",
|
||||
"configSummaryPosts": " ├─ Publicações iniciais: {count}",
|
||||
"configSummaryTopics": " ├─ Tópicos em destaque: {count}",
|
||||
"configSummaryPlatforms": " └─ Plataformas: Twitter {twitter}, Reddit {reddit}",
|
||||
"timeConfigDetail": "Configuração de tempo: {minutes} min/ronda, {rounds} rondas no total",
|
||||
"narrativeDirection": "Direção narrativa: {direction}",
|
||||
"envSetupComplete": "✓ Configuração do ambiente concluída, pronto para simular",
|
||||
"startSimCustomRounds": "A iniciar simulação, rondas personalizadas: {rounds}",
|
||||
"startSimAutoRounds": "A iniciar simulação, rondas configuradas automaticamente: {rounds}",
|
||||
"startGeneratingAgentProfiles": "A gerar personas de agentes...",
|
||||
"agentProfile": "→ Persona do agente {current}/{total}: {name} ({profession})",
|
||||
"allProfilesComplete": "✓ Todas as {count} personas de agentes geradas",
|
||||
"loadingExistingConfig": "A carregar dados de configuração existentes...",
|
||||
"loadedAgentProfiles": "Carregadas {count} personas de agentes",
|
||||
"configLoadSuccess": "✓ Configuração da simulação carregada",
|
||||
"configSummaryPostsAlt": " └─ Publicações iniciais: {count}",
|
||||
"configGenerating": "Configuração a gerar, a consultar...",
|
||||
"loadConfigFailed": "Falha ao carregar configuração: {error}",
|
||||
"step2Init": "Configuração de ambiente do Passo 2 inicializada",
|
||||
"step3Init": "Execução de simulação do Passo 3 inicializada",
|
||||
"startingDualSim": "A iniciar simulação paralela em duas plataformas...",
|
||||
"setMaxRounds": "Máximo de rondas de simulação definido em: {rounds}",
|
||||
"graphMemoryUpdateEnabled": "Atualização dinâmica de memória do grafo ativada",
|
||||
"oldSimCleared": "✓ Logs antigos de simulação limpos, a reiniciar simulação",
|
||||
"engineStarted": "✓ Motor de simulação iniciado com sucesso",
|
||||
"startFailed": "✗ Falha ao iniciar: {error}",
|
||||
"startException": "✗ Erro ao iniciar: {error}",
|
||||
"stoppingSim": "A parar simulação...",
|
||||
"simStoppedSuccess": "✓ Simulação parada",
|
||||
"stopFailed": "Falha ao parar: {error}",
|
||||
"stopException": "Erro ao parar: {error}",
|
||||
"allPlatformsCompleted": "✓ Todas as simulações de plataforma terminaram",
|
||||
"simCompleted": "✓ Simulação concluída",
|
||||
"reportRequestSent": "Pedido de geração de relatório enviado, aguarde...",
|
||||
"startingReportGen": "A iniciar geração de relatório...",
|
||||
"reportGenTaskStarted": "✓ Tarefa de geração de relatório iniciada: {reportId}",
|
||||
"reportGenFailed": "✗ Falha ao iniciar a geração de relatório: {error}",
|
||||
"reportGenException": "✗ Erro na geração de relatório: {error}",
|
||||
"step5Init": "Interação profunda do Passo 5 inicializada",
|
||||
"selectChatTarget": "Alvo da conversa selecionado: {name}",
|
||||
"sendFailed": "Envio falhou: {error}",
|
||||
"sendToReportAgent": "Enviado ao Report Agent: {message}...",
|
||||
"reportAgentReplied": "Report Agent respondeu",
|
||||
"sendToAgent": "Enviado para {name}: {message}...",
|
||||
"agentReplied": "{name} respondeu",
|
||||
"sendSurvey": "A enviar inquérito para {count} alvos...",
|
||||
"receivedReplies": "Recebidas {count} respostas",
|
||||
"surveySendFailed": "Envio do inquérito falhou: {error}",
|
||||
"loadReportData": "A carregar dados do relatório: {id}",
|
||||
"loadReportFailed": "Falha ao carregar relatório: {error}",
|
||||
"reportDataLoaded": "Dados do relatório carregados",
|
||||
"loadReportLogFailed": "Falha ao carregar logs do relatório: {error}",
|
||||
"loadedProfiles": "Carregados {count} indivíduos simulados",
|
||||
"loadProfilesFailed": "Falha ao carregar indivíduos simulados: {error}",
|
||||
"interactionViewInit": "InteractionView inicializado",
|
||||
"reportViewInit": "ReportView inicializado",
|
||||
"getReportInfoFailed": "Falha ao obter informações do relatório: {error}",
|
||||
"enterStep": "A entrar no Passo {step}: {name}",
|
||||
"returnToStep": "A regressar ao Passo {step}: {name}",
|
||||
"customSimRounds": "Rondas personalizadas de simulação: {rounds} rondas"
|
||||
},
|
||||
"report": {
|
||||
"taskStarted": "Tarefa de geração de relatório iniciada",
|
||||
"planningStart": "A iniciar planeamento da estrutura do relatório",
|
||||
"fetchSimContext": "A obter contexto da simulação",
|
||||
"planningComplete": "Planeamento da estrutura concluído",
|
||||
"sectionStart": "A iniciar geração da secção: {title}",
|
||||
"reactThought": "ReACT ronda {iteration} a pensar",
|
||||
"toolCall": "A chamar ferramenta: {toolName}",
|
||||
"toolResult": "Ferramenta {toolName} devolveu resultado",
|
||||
"llmResponse": "Resposta do LLM (chamadas de ferramenta: {hasToolCalls}, resposta final: {hasFinalAnswer})",
|
||||
"sectionContentDone": "Geração de conteúdo da secção {title} concluída",
|
||||
"sectionComplete": "Geração da secção {title} concluída",
|
||||
"reportComplete": "Geração do relatório concluída",
|
||||
"errorOccurred": "Ocorreu um erro: {error}",
|
||||
"agentInitDone": "ReportAgent inicializado: graph_id={graphId}, simulation_id={simulationId}",
|
||||
"executingTool": "A executar ferramenta: {toolName}, parâmetros: {params}",
|
||||
"toolExecFailed": "Execução da ferramenta falhou: {toolName}, erro: {error}",
|
||||
"startPlanningOutline": "A iniciar planeamento da estrutura do relatório...",
|
||||
"outlinePlanDone": "Planeamento da estrutura concluído: {count} secções",
|
||||
"outlinePlanFailed": "Planeamento da estrutura falhou: {error}",
|
||||
"reactGenerateSection": "ReACT a gerar secção: {title}",
|
||||
"sectionIterNone": "Secção {title} iteração {iteration}: LLM devolveu None",
|
||||
"sectionConflict": "Secção {title} ronda {iteration}: LLM devolveu tanto chamada de ferramenta como Final Answer (conflito #{conflictCount})",
|
||||
"sectionConflictDowngrade": "Secção {title}: {conflictCount} conflitos consecutivos, a despromover para truncar e executar a primeira chamada de ferramenta",
|
||||
"sectionGenDone": "Geração da secção {title} concluída (chamadas de ferramenta: {count})",
|
||||
"multiToolOnlyFirst": "O LLM tentou {total} chamadas de ferramenta, a executar apenas a primeira: {toolName}",
|
||||
"sectionNoPrefix": "Secção {title} sem prefixo 'Final Answer:', a adotar saída do LLM como conteúdo final (chamadas de ferramenta: {count})",
|
||||
"sectionMaxIter": "Secção {title} atingiu o máximo de iterações, a forçar geração",
|
||||
"sectionForceFailed": "Secção {title}: LLM devolveu None ao forçar encerramento, a usar mensagem de erro predefinida",
|
||||
"sectionGenFailedContent": "(Esta secção não pôde ser gerada: o LLM devolveu resposta vazia; tente novamente mais tarde)",
|
||||
"outlineSavedToFile": "Estrutura guardada em ficheiro: {reportId}/outline.json",
|
||||
"sectionSaved": "Secção guardada: {reportId}/section_{sectionNum}.md",
|
||||
"reportGenDone": "Geração do relatório concluída: {reportId}",
|
||||
"reportGenFailed": "Geração do relatório falhou: {error}",
|
||||
"agentChat": "Conversa do Report Agent: {message}...",
|
||||
"fetchReportFailed": "Falha ao obter conteúdo do relatório: {error}",
|
||||
"outlineSaved": "Estrutura guardada: {reportId}",
|
||||
"sectionFileSaved": "Secção guardada: {reportId}/{fileSuffix}",
|
||||
"fullReportAssembled": "Relatório completo montado: {reportId}",
|
||||
"reportSaved": "Relatório guardado: {reportId}",
|
||||
"reportFolderDeleted": "Pasta do relatório eliminada: {reportId}",
|
||||
"redirectToQuickSearch": "search_graph redirecionado para quick_search",
|
||||
"redirectToInsightForge": "get_simulation_context redirecionado para insight_forge"
|
||||
},
|
||||
"console": {
|
||||
"zepToolsInitialized": "ZepToolsService inicializado",
|
||||
"zepRetryAttempt": "Tentativa {attempt} de {operation} no Zep falhou: {error}, a tentar novamente em {delay}s...",
|
||||
"zepAllRetriesFailed": "Operação {operation} no Zep falhou após {retries} tentativas: {error}",
|
||||
"graphSearch": "Pesquisa no grafo: graph_id={graphId}, query={query}...",
|
||||
"graphSearchOp": "Pesquisa no grafo (graph={graphId})",
|
||||
"searchComplete": "Pesquisa concluída: encontrados {count} factos relevantes",
|
||||
"zepSearchApiFallback": "API de pesquisa do Zep falhou, a recorrer à pesquisa local: {error}",
|
||||
"usingLocalSearch": "A utilizar pesquisa local: query={query}...",
|
||||
"localSearchComplete": "Pesquisa local concluída: encontrados {count} factos relevantes",
|
||||
"localSearchFailed": "Pesquisa local falhou: {error}",
|
||||
"fetchingAllNodes": "A obter todos os nós do grafo {graphId}...",
|
||||
"fetchedNodes": "{count} nós obtidos",
|
||||
"fetchingAllEdges": "A obter todas as arestas do grafo {graphId}...",
|
||||
"fetchedEdges": "{count} arestas obtidas",
|
||||
"fetchingNodeDetail": "A obter detalhes do nó: {uuid}...",
|
||||
"fetchNodeDetailOp": "Obter detalhes do nó (uuid={uuid}...)",
|
||||
"fetchNodeDetailFailed": "Falha ao obter detalhes do nó: {error}",
|
||||
"fetchingNodeEdges": "A obter arestas do nó {uuid}...",
|
||||
"foundNodeEdges": "Encontradas {count} arestas relacionadas com o nó",
|
||||
"fetchNodeEdgesFailed": "Falha ao obter arestas do nó: {error}",
|
||||
"fetchingEntitiesByType": "A obter entidades do tipo {type}...",
|
||||
"foundEntitiesByType": "Encontradas {count} entidades do tipo {type}",
|
||||
"fetchingEntitySummary": "A obter resumo de relações da entidade {name}...",
|
||||
"fetchingGraphStats": "A obter estatísticas do grafo {graphId}...",
|
||||
"fetchingSimContext": "A obter contexto da simulação: {requirement}...",
|
||||
"insightForgeStart": "InsightForge - obtenção profunda de insights: {query}...",
|
||||
"generatedSubQueries": "Geradas {count} subconsultas",
|
||||
"insightForgeComplete": "InsightForge concluído: {facts} factos, {entities} entidades, {relationships} relações",
|
||||
"generateSubQueriesFailed": "Falha ao gerar subconsultas: {error}, a utilizar predefinições",
|
||||
"panoramaSearchStart": "PanoramaSearch - pesquisa ampla: {query}...",
|
||||
"panoramaSearchComplete": "PanoramaSearch concluído: {active} ativos, {historical} históricos",
|
||||
"quickSearchStart": "QuickSearch - pesquisa simples: {query}...",
|
||||
"quickSearchComplete": "QuickSearch concluído: {count} resultados",
|
||||
"interviewAgentsStart": "InterviewAgents - entrevista profunda (API real): {requirement}...",
|
||||
"profilesNotFound": "Perfis não encontrados para a simulação {simId}",
|
||||
"loadedProfiles": "Carregados {count} perfis de agentes",
|
||||
"selectedAgentsForInterview": "Selecionados {count} agentes para entrevista: {indices}",
|
||||
"generatedInterviewQuestions": "Geradas {count} perguntas de entrevista",
|
||||
"callingBatchInterviewApi": "A chamar API de entrevista em lote (plataforma dupla): {count} agentes",
|
||||
"interviewApiReturned": "API de entrevista devolveu: {count} resultados, success={success}",
|
||||
"interviewApiReturnedFailure": "API de entrevista devolveu falha: {error}",
|
||||
"interviewApiCallFailed": "Chamada à API de entrevista falhou (ambiente não está em execução?): {error}",
|
||||
"interviewApiCallException": "Exceção na chamada à API de entrevista: {error}",
|
||||
"interviewAgentsComplete": "InterviewAgents concluído: entrevistados {count} agentes (plataforma dupla)",
|
||||
"loadedRedditProfiles": "Carregados {count} perfis de reddit_profiles.json",
|
||||
"readRedditProfilesFailed": "Falha ao ler reddit_profiles.json: {error}",
|
||||
"loadedTwitterProfiles": "Carregados {count} perfis de twitter_profiles.csv",
|
||||
"readTwitterProfilesFailed": "Falha ao ler twitter_profiles.csv: {error}",
|
||||
"llmSelectAgentFailed": "Seleção de agente pelo LLM falhou, a utilizar seleção predefinida: {error}",
|
||||
"generateInterviewQuestionsFailed": "Falha ao gerar perguntas de entrevista: {error}",
|
||||
"generateInterviewSummaryFailed": "Falha ao gerar resumo da entrevista: {error}"
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue