{ "common": { "confirm": "Confirma", "cancel": "Cancel·la", "save": "Desa", "loading": "Carregant...", "error": "Error", "success": "Èxit", "completed": "Completat", "processing": "Generant", "pending": "Pendent", "ready": "Llest", "running": "En execució", "failed": "Fallat", "unknown": "Desconegut", "unknownError": "Error desconegut", "none": "Cap", "close": "Tanca", "back": "Enrere", "next": "Següent", "retry": "Torna-ho a intentar", "noData": "No hi ha dades disponibles", "hours": "hores", "minutes": "minuts", "rounds": "rondes", "items": "elements", "files": "fitxers", "edit": "Edita" }, "meta": { "title": "MiroFish - Prediu-ho tot", "description": "MiroFish - Sistema de simulació d'opinions a xarxes socials" }, "nav": { "visitGithub": "Visita la nostra pàgina de Github" }, "home": { "tagline": "Motor d'Intel·ligència Col·lectiva Concís i Universal", "version": "/ v0.1-Previsualització", "heroTitle1": "Puja informes,", "heroTitle2": "Prediu el futur", "heroDesc": "A partir d'un sol document, {brand} extreu llavors de realitat per auto-generar un món paral·lel amb fins a {agentScale}. Injecta variables des d'una perspectiva omniscient per trobar l'{optimalSolution} en dinàmiques de grup complexes.", "heroDescBrand": "MiroFish", "heroDescAgentScale": "Agents a escala de milions", "heroDescOptimalSolution": "\"òptim local\"", "slogan": "Que els Agents assagen el futur, que les decisions prevalguin", "systemStatus": "Estat del sistema", "systemReady": "Llest", "systemReadyDesc": "Motor de predicció en espera. Puja dades no estructurades per inicialitzar una seqüència de simulació.", "metricLowCost": "Baix cost", "metricLowCostDesc": "~5$/sim de mitjana", "metricHighAvail": "Escalable", "metricHighAvailDesc": "Milions d'Agents", "workflowSequence": "Flux de treball", "step01Title": "Construcció del graf", "step01Desc": "Extracció de llavors i injecció de memòria i construcció de GraphRAG", "step02Title": "Configuració de l'entorn", "step02Desc": "Extracció d'entitats i generació de persones i injecció de configuració d'Agents", "step03Title": "Simulació", "step03Desc": "Simulació paral·lela en dues plataformes i anàlisi automàtica de requisits i memòria temporal", "step04Title": "Informe", "step04Desc": "ReportAgent interactua amb l'entorn post-simulació mitjançant eines avançades", "step05Title": "Interacció", "step05Desc": "Xateja amb qualsevol individu simulat i conversa amb ReportAgent", "realitySeed": "01 / Llavor de realitat", "supportedFormats": "Formats: PDF, MD, TXT", "dragToUpload": "Arrossega fitxers per pujar-los", "orBrowse": "o fes clic per explorar fitxers", "inputParams": "Paràmetres d'entrada", "simulationPrompt": ">_ 02 / Prompt de simulació", "promptPlaceholder": "// Descriu el teu requisit de simulació o predicció en llenguatge natural", "engineBadge": "Motor: MiroFish-V1.0", "startEngine": "Inicia el motor", "initializing": "Inicialitzant...", "importOntology": "Importa ontologia", "importOntologyHint": "Selecciona el fitxer JSON d'ontologia" }, "main": { "layoutGraph": "Graf", "layoutSplit": "Dividit", "layoutWorkbench": "Taulell", "stepNames": [ "Construcció del graf", "Configuració de l'entorn", "Execució de la simulació", "Generació de l'informe", "Interacció profunda" ] }, "step1": { "ontologyGeneration": "Generació d'ontologia", "ontologyCompleted": "Completada", "ontologyGenerating": "Generant", "ontologyPending": "Pendent", "ontologyDesc": "El LLM analitza el contingut del document i els requisits de simulació, extreu llavors de realitat i auto-genera una estructura d'ontologia adequada", "ontologyFallbackPersonName": "Persona", "ontologyFallbackPersonDesc": "Qualsevol persona individual que no encaixa en altres tipus de persona més específics.", "ontologyFallbackPersonExamples": ["ciutadà ordinari", "internauta anònim"], "ontologyFallbackOrgName": "Organització", "ontologyFallbackOrgDesc": "Qualsevol organització que no encaixa en altres tipus d'organització més específics.", "ontologyFallbackOrgExamples": ["petita empresa", "grup comunitari"], "analyzingDocs": "Analitzant documents...", "graphRagBuild": "Construcció de GraphRAG", "graphRagDesc": "Basant-se en l'ontologia generada, els documents es divideixen automàticament en fragments i s'envien a Zep per construir un graf de coneixement, extraient entitats i relacions, formant memòria temporal i resums de comunitat", "entityNodes": "Nodes d'entitat", "relationEdges": "Arestes de relació", "schemaTypes": "Tipus d'esquema", "buildComplete": "Construcció completada", "buildCompleteDesc": "La construcció del graf s'ha completat. Continua al pas següent per a la configuració de l'entorn de simulació.", "inProgress": "En curs", "creating": "Creant...", "enterEnvSetup": "Entra a la configuració de l'entorn", "createSimulationFailed": "Error en crear la simulació: {error}", "createSimulationException": "Excepció en crear la simulació: {error}", "labelEntityTypes": "TIPUS D'ENTITAT GENERATS", "labelRelationTypes": "TIPUS DE RELACIÓ GENERATS", "labelEntity": "ENTITAT", "labelRelation": "RELACIÓ", "labelAttributes": "ATRIBUTS", "labelExamples": "EXEMPLES", "labelConnections": "CONNEXIONS", "pauseTitle": "Ontologia llesta", "pauseDesc": "Revisa l'ontologia generada abans de construir el graf de coneixement.", "downloadOntology": "Descarregar ontologia JSON", "deleteOntology": "Esborrar ontologia", "proceedToGraph": "Continuar a GraphRAG →", "deleteOntologyConfirm": "Esborrar aquesta ontologia i tornar a l'inici?" }, "step2": { "simInstanceInit": "Inicialització de la instància de simulació", "simInstanceDesc": "Crea una nova instància de simulació i obté les plantilles de paràmetres del món", "asyncTaskDone": "Tasca asíncrona completada", "generateAgentPersona": "Genera persones d'Agent", "generateAgentPersonaDesc": "Combina el context per extreure automàticament entitats i relacions del graf de coneixement, inicialitza individus simulats i assigna comportaments i memòries únics basats en llavors de realitat", "currentAgentCount": "Agents actuals", "expectedAgentTotal": "Total d'agents previst", "relatedTopicsCount": "Temes relacionats amb la llavor de realitat", "generatedAgentPersonas": "Persones d'Agent generades", "unknownProfession": "Professió desconeguda", "noBio": "Sense biografia disponible", "dualPlatformConfig": "Genera configuració de doble plataforma", "dualPlatformConfigDesc": "El LLM configura intel·ligentment el flux temporal del món, els algorismes de recomanació, les hores actives de cada individu, la freqüència de publicació, els activadors d'esdeveniments i més, basant-se en els requisits i les llavors de realitat", "simulationDuration": "Durada de la simulació", "roundDuration": "Durada de la ronda", "totalRounds": "Total de rondes", "activePerHour": "Actius per hora", "peakHours": "Hores punta", "workHours": "Hores de feina", "morningHours": "Hores del matí", "offPeakHours": "Hores vall", "agentConfig": "Configuració de l'Agent", "activeTimePeriod": "Hores actives", "postsPerHour": "Publicacions/h", "commentsPerHour": "Comentaris/h", "responseDelay": "Retard de resposta", "activityLevel": "Nivell d'activitat", "sentimentBias": "Biaix de sentiment", "influenceWeight": "Influència", "recommendAlgoConfig": "Configuració de l'algorisme de recomanació", "platform1Name": "Plataforma 1: Plaça / Feed", "platform2Name": "Plataforma 2: Tema / Comunitat", "recencyWeight": "Pes de la recència", "popularityWeight": "Pes de la popularitat", "relevanceWeight": "Pes de la rellevància", "viralThreshold": "Llindar viral", "echoChamberStrength": "Intensitat de la cambra de ressò", "llmConfigReasoning": "Raonament de configuració del LLM", "initialActivation": "Orquestració d'activació inicial", "initialActivationDesc": "Auto-genera esdeveniments d'activació inicials i temes candents basant-se en la direcció narrativa per guiar l'estat inicial del món de simulació", "orchestrating": "Orquestrant", "narrativeDirection": "Direcció narrativa", "initialHotTopics": "Temes candents inicials", "initialActivationSeq": "Seqüència d'activació inicial ({count})", "setupComplete": "Configuració completada", "setupCompleteDesc": "L'entorn de simulació està llest. Ja pots iniciar la simulació.", "roundsConfig": "Configuració de rondes de simulació", "roundsConfigDesc": "MiroFish planifica automàticament simular {hours} hores del món real, on cada ronda representa {minutesPerRound} minuts de temps transcorregut", "customToggle": "Personalitzat", "roundsUnit": "rondes", "estimatedDuration": "Per a 100 Agents: estimació ~{minutes} minuts", "estimatedDurationFull": "Per a 100 Agents: estimació {minutes} minuts", "recommendedRounds": "{rounds} (recomanat)", "customTip": "Per a la primera execució, recomanem fortament canviar al 'Mode personalitzat' per reduir les rondes, fer una previsualització ràpida i reduir el risc d'errors", "backToGraphBuild": "Torna a la construcció del graf", "startDualWorldSim": "Inicia la simulació paral·lela de dos mons", "profileModalAge": "Edat aparent", "profileModalGender": "Gènere aparent", "profileModalCountry": "País/Regió", "profileModalMbti": "MBTI aparent", "profileModalBio": "Biografia de la persona", "profileModalTopics": "Temes relacionats amb la llavor de realitat", "profileModalPersona": "Rerefons detallat de la persona", "personaDimExperience": "Experiència completa de l'esdeveniment", "personaDimExperienceDesc": "Trajectòria conductual completa en aquest esdeveniment", "personaDimBehavior": "Perfil conductual", "personaDimBehaviorDesc": "Resum de l'experiència i preferències conductuals", "personaDimMemory": "Empremta de memòria única", "personaDimMemoryDesc": "Memories formades a partir de llavors de realitat", "personaDimSocial": "Xarxa social", "personaDimSocialDesc": "Connexions individuals i graf d'interaccions", "genderMale": "Home", "genderFemale": "Dona", "genderOther": "Altre", "yearsOld": "anys", "initializing": "Inicialitzant", "generating": "Generant", "agentCount": "Nombre d'agents", "agentCountHint": "Selecció per connectivitat del graf (els més connectats primer)", "agentCountWarning": "Menys de 15 agents pot produir simulacions menys riques", "phaseATitle": "Personalitats dels agents", "phaseASubtitle": "Revisa i edita els perfils d'agents generats", "continueToPhaseB": "Continua →", "phaseBTitle": "Paràmetres de simulació", "phaseBSubtitle": "Edita els paràmetres de comportament i configuració de la simulació", "launchSimulation": "Llança la simulació", "editAgent": "Edita", "deleteAgent": "Elimina", "deleteAgentConfirm": "Elimines aquest agent? Aquesta acció no es pot desfer.", "regenerateAgent": "Regenera", "regenerateAgentHint": "Instruccions addicionals (opcional)", "createAgent": "Afegeix agent", "createAgentTitle": "Afegeix un nou agent", "selectEntityType": "Tipus d'entitat", "selectEntity": "Selecciona entitat", "extraInstructions": "Instruccions addicionals (opcional)", "manuallyEditedBadge": "Editat", "generatingConfig": "Generant configuració de comportament...", "cloneFrom": "Clona d'una simulació anterior", "newSimulation": "Nova simulació", "simulationSource": "Origen de la simulació", "behaviorParams": "Paràmetres de comportament", "globalParams": "Paràmetres globals", "totalHours": "Hores totals", "minutesPerRound": "Minuts per ronda", "followingProbability": "Probabilitat de seguiment", "recsysType": "Sistema de recomanació", "loadingEntityCount": "Carregant entitats disponibles...", "availableEntities": "Entitats disponibles al graf:", "maxAgentsLabel": "Nombre d'agents a generar:", "minAgentsWarning": "Menys de 15 agents pot produir simulacions menys riques", "startGeneration": "Inicia la generació", "agentField_name": "Nom", "agentField_bio": "Bio", "agentField_persona": "Persona", "agentField_age": "Edat", "agentField_gender": "Gènere", "agentField_mbti": "MBTI", "agentField_country": "País", "agentField_profession": "Professió", "agentField_stance": "Postura" }, "step3": { "startGenerateReport": "Genera l'informe", "generatingReport": "Iniciant...", "waitingForActions": "Esperant accions dels agents...", "errorMissingSimId": "Error: manca simulationId", "startingDualSim": "Iniciant la simulació paral·lela en dues plataformes...", "graphMemoryUpdateEnabled": "Actualització dinàmica de la memòria del graf activada", "setMaxRounds": "Nombre màxim de rondes de simulació establert a: {rounds}", "oldSimCleared": "Registres de simulació antics eliminats, reiniciant la simulació", "engineStarted": "Motor de simulació iniciat correctament", "startFailed": "Error en iniciar: {error}", "startException": "Excepció en iniciar: {error}", "stoppingSim": "Aturant la simulació...", "simStopped": "Simulació aturada", "stopFailed": "Error en aturar: {error}", "stopException": "Excepció en aturar: {error}", "allPlatformsCompleted": "Totes les simulacions de plataforma han finalitzat", "simCompleted": "Simulació completada", "graphRealtimeRefresh": "Actualització en temps real del graf activada (30s)", "graphRefreshStopped": "Actualització en temps real del graf aturada", "preparingGoBack": "Preparant el retorn al pas 2, tancant la simulació...", "closingSimEnv": "Tancant l'entorn de simulació...", "simEnvClosed": "Entorn de simulació tancat", "closeFailed": "Error en tancar l'entorn de simulació, intentant forçar l'aturada...", "stoppingProcess": "Aturant el procés de simulació...", "checkStatusFailed": "Error en comprovar l'estat de la simulació: {error}", "forceStopSuccess": "Simulació aturada forçosament", "forceStopFailed": "Error en l'aturada forçosa: {error}", "startGenerateReportBtn": "Genera l'informe", "generatingReportBtn": "Iniciant..." }, "step4": { "generatingSection": "Generant {title}...", "goToInteraction": "Entra a la interacció profunda", "waitingForReportAgent": "Esperant l'Agent d'informe...", "collapse": "Redueix ▲", "expandAll": "Mostra tots {count} ▼", "expandAllEntities": "Mostra totes {count} ▼", "scenarioLabel": "Escenari: ", "tabKeyFacts": "Fets clau ({count})", "tabCoreEntities": "Entitats principals ({count})", "tabRelationChains": "Cadenes de relació ({count})", "tabSubQueries": "Subconsultes ({count})", "panelKeyFacts": "Últims fets clau de la memòria temporal", "totalCount": "{count} en total", "totalEntityCount": "{count} en total", "panelCoreEntities": "Entitats principals", "factCount": "{count} fets", "panelRelationChains": "Cadenes de relació", "panelSubQueries": "Subpreguntes d'anàlisi de consulta de deriva", "emptyKeyFacts": "No hi ha fets clau disponibles", "emptyCoreEntities": "No hi ha entitats principals disponibles", "emptyRelationChains": "No hi ha cadenes de relació disponibles", "tabActiveFacts": "Fets actius ({count})", "tabHistoricalFacts": "Fets històrics ({count})", "tabEntities": "Entitats ({count})", "panelActiveFacts": "Fets actius", "emptyActiveFacts": "No hi ha fets actius disponibles", "panelHistoricalFacts": "Fets històrics", "emptyHistoricalFacts": "No hi ha fets històrics disponibles", "panelEntities": "Entitats", "emptyEntities": "No hi ha entitats disponibles", "searchLabel": "Cerca: ", "tabFacts": "Fets ({count})", "tabEdges": "Arestes ({count})", "tabNodes": "Nodes ({count})", "panelSearchResults": "Resultats de la cerca", "emptySearchResults": "No s'han trobat resultats", "panelRelatedEdges": "Arestes relacionades", "panelRelatedNodes": "Nodes relacionats", "world1": "Món 1", "world2": "Món 2" }, "step5": { "newSimulation": "← Nova simulació", "interactiveTools": "Eines interactives", "agentsAvailable": "{count} agents disponibles", "chatWithReportAgent": "Xateja amb l'Agent d'informe", "chatWithAgent": "Xateja amb qualsevol individu del món", "selectChatTarget": "Selecciona l'objectiu del xat", "sendSurvey": "Envia una enquesta al món", "reportAgentChat": "Agent d'informe - Xat", "reportAgentDesc": "Una versió conversacional de l'agent de generació d'informes amb accés a 4 eines professionals i la memòria completa de MiroFish", "toolInsightForge": "Atribució profunda InsightForge", "toolInsightForgeDesc": "Alinea les dades de les llavors del món real amb l'estat de la simulació, combinant la Memòria Global/Local per a una anàlisi d'atribució profunda entre períodes temporals", "toolPanoramaSearch": "Seguiment complet PanoramaSearch", "toolPanoramaSearchDesc": "Algorisme BFS basat en grafs que reconstrueix els camins de propagació d'esdeveniments, capturant la topologia completa del flux d'informació", "toolQuickSearch": "Recuperació ràpida QuickSearch", "toolQuickSearchDesc": "Interfície de consulta instantània basada en GraphRAG amb indexació optimitzada per a l'extracció ràpida d'atributs de nodes i fets discrets", "toolInterviewSubAgent": "Entrevista virtual InterviewSubAgent", "toolInterviewSubAgentDesc": "Entrevistes autònomes que condueixen diàlegs paral·lels multi-ronda amb individus simulats, recollint dades d'opinió no estructurades i estats psicològics", "profileBio": "Biografia", "chatEmptyReportAgent": "Xateja amb l'Agent d'informe per explorar el contingut de l'informe en profunditat", "chatEmptyAgent": "Xateja amb individus simulats per entendre les seves perspectives", "chatInputPlaceholder": "Escriu la teva pregunta...", "selectSurveyTarget": "Selecciona els objectius de l'enquesta", "selectedCount": "Seleccionats {selected} / {total}", "surveyQuestions": "Preguntes de l'enquesta", "surveyInputPlaceholder": "Introdueix la pregunta que vols fer a tots els objectius seleccionats...", "submitSurvey": "Envia l'enquesta", "surveyResults": "Resultats de l'enquesta", "surveyResultsCount": "{count} respostes", "selectAll": "Selecciona-ho tot", "clearSelection": "Neteja", "errorOccurred": "S'ha produït un error: {error}", "noResponse": "Sense resposta", "requestFailed": "Sol·licitud fallida", "selectAgentFirst": "Selecciona primer un individu simulat" }, "graph": { "panelTitle": "Visualització de relacions del graf", "refreshGraph": "Actualitza el graf", "graphMemoryRealtime": "Memòria a curt/llarg termini de GraphRAG actualitzant-se en temps real", "realtimeUpdating": "Actualitzant en temps real...", "pendingContentHint": "Alguns continguts encara s'estan processant. Considera actualitzar el graf manualment més tard.", "nodeDetails": "Detalls del node", "relationship": "Relació", "graphDataLoading": "Carregant dades del graf...", "waitingOntology": "Esperant la generació de l'ontologia...", "toggleMaximize": "Maximitza/Restaura", "closeHint": "Tanca el consell" }, "history": { "title": "Historial de simulacions", "graphBuild": "Construcció del graf", "envSetup": "Configuració de l'entorn", "analysisReport": "Informe d'anàlisi", "moreFiles": "+{count} fitxers", "noFiles": "Sense fitxers", "loadingText": "Carregant...", "simRequirement": "Requisit de simulació", "relatedFiles": "Fitxers relacionats", "noRelatedFiles": "Sense fitxers relacionats", "replayTitle": "Reproducció de la simulació", "step1Button": "Construcció del graf", "step2Button": "Configuració de l'entorn", "step4Button": "Informe d'anàlisi", "replayHint": "El pas 3 'Execució de la simulació' i el pas 5 'Interacció profunda' s'han d'iniciar en temps real i no admeten la reproducció de l'historial", "notStarted": "No iniciat", "roundsProgress": "{current}/{total} rondes", "untitledSimulation": "Simulació sense títol", "unknownFile": "Fitxer desconegut", "deleteProject": "Elimina el projecte", "deleteConfirm": "Elimines \"{title}\" i totes les seves simulacions?", "deleteConfirmYes": "Elimina", "deleteConfirmNo": "Cancel·la", "editName": "Edita el nom", "namePlaceholder": "Nom del projecte", "sourceDoc": "Document original", "finalReport": "Informe final", "simLog": "Log de simulació" }, "api": { "projectNotFound": "Projecte no trobat: {id}", "projectDeleteFailed": "Projecte no trobat o error en l'eliminació: {id}", "projectDeleted": "Projecte eliminat: {id}", "projectReset": "Projecte restablert: {id}", "requireSimulationRequirement": "Proporciona un requisit de simulació (simulation_requirement)", "requireFileUpload": "Puja almenys un fitxer de document", "noDocProcessed": "No s'ha processat cap document correctament. Comprova els formats dels fitxers.", "requireProjectId": "Proporciona project_id", "configError": "Error de configuració: {details}", "zepApiKeyMissing": "ZEP_API_KEY no configurat", "ontologyNotGenerated": "L'ontologia encara no s'ha generat. Crida primer /ontology/generate.", "graphBuilding": "Construcció del graf en curs. No reenvïis. Per forçar la reconstrucció, afegeix force: true.", "textNotFound": "No s'ha trobat el contingut de text extret", "ontologyNotFound": "No s'ha trobat la definició de l'ontologia", "requireOntologyJson": "Cal proporcionar el JSON d'ontologia (camp ontology)", "invalidOntologyJson": "Format JSON d'ontologia no vàlid", "invalidOntologyStructure": "L'ontologia ha de tenir arrays entity_types i edge_types", "graphBuildStarted": "Tasca de construcció del graf iniciada. Consulta el progrés a /task/{taskId}.", "graphBuildComplete": "Construcció del graf completada", "buildFailed": "Error en la construcció: {error}", "taskNotFound": "Tasca no trobada: {id}", "graphDeleted": "Graf eliminat: {id}", "entityNotFound": "Entitat no trobada: {id}", "graphNotBuilt": "El graf encara no s'ha construït. Crida primer /api/graph/build.", "requireSimulationId": "Proporciona simulation_id", "simulationNotFound": "Simulació no trobada: {id}", "projectMissingRequirement": "Al projecte li manca el requisit de simulació (simulation_requirement)", "prepareStarted": "Tasca de preparació iniciada. Consulta el progrés a /api/simulation/prepare/status.", "alreadyPrepared": "La preparació ja s'ha completat. No cal regenerar.", "notStartedPrepare": "La preparació no s'ha iniciat. Crida /api/simulation/prepare.", "taskCompletedPrepared": "Tasca completada (la preparació ja existia)", "requireTaskOrSimId": "Proporciona task_id o simulation_id", "configNotFound": "Configuració de simulació no trobada. Crida primer /prepare.", "configFileNotFound": "Fitxer de configuració no trobat. Crida primer /prepare.", "unknownScript": "Script desconegut: {name}. Disponibles: {allowed}", "scriptFileNotFound": "Fitxer d'script no trobat: {name}", "requireGraphId": "Proporciona graph_id", "noMatchingEntities": "No s'han trobat entitats coincidents", "maxRoundsPositive": "max_rounds ha de ser un enter positiu", "maxRoundsInvalid": "max_rounds ha de ser un enter vàlid", "invalidPlatform": "Tipus de plataforma no vàlid: {platform}. Opcions: twitter/reddit/parallel", "simRunningForceHint": "La simulació s'està executant. Atura-la primer amb /stop o utilitza force=true per reiniciar.", "simNotReady": "La simulació no està llesta. Estat actual: {status}. Crida primer /prepare.", "graphIdRequiredForMemory": "L'actualització de la memòria del graf requereix un graph_id vàlid. Assegura't que el graf s'ha construït.", "dbNotExist": "La base de dades no existeix. Pot ser que la simulació no s'hagi executat encara.", "requireMessage": "Proporciona un missatge", "missingGraphId": "Manca el graph ID", "missingGraphIdEnsure": "Manca el graph ID. Assegura't que el graf s'ha construït.", "missingSimRequirement": "Manca la descripció del requisit de simulació", "reportAlreadyExists": "L'informe ja existeix", "reportGenerateStarted": "Tasca de generació de l'informe iniciada. Consulta el progrés a /api/report/generate/status.", "reportGenerated": "Informe generat", "reportNotFound": "Informe no trobat: {id}", "noReportForSim": "No s'ha trobat cap informe per a aquesta simulació: {id}", "reportDeleted": "Informe eliminat: {id}", "reportGenerateFailed": "Error en la generació de l'informe", "sectionNotFound": "Secció no trobada: section_{index}.md", "reportProgressNotAvail": "Informe no trobat o progrés no disponible: {id}", "requireAgentId": "Proporciona agent_id", "requirePrompt": "Proporciona un prompt (pregunta d'entrevista)", "invalidInterviewPlatform": "La plataforma ha de ser 'twitter' o 'reddit'", "envNotRunning": "L'entorn de simulació no s'està executant o està tancat. Assegura't que la simulació s'ha completat i està en mode d'espera de comandes.", "interviewTimeout": "Temps d'espera de la resposta d'entrevista esgotat: {error}", "requireInterviews": "Proporciona interviews (llista d'entrevistes)", "interviewListMissingAgentId": "Manca agent_id a l'element {index} de la llista d'entrevistes", "interviewListMissingPrompt": "Manca prompt a l'element {index} de la llista d'entrevistes", "interviewListInvalidPlatform": "La plataforma de l'element {index} de la llista d'entrevistes ha de ser 'twitter' o 'reddit'", "batchInterviewTimeout": "Temps d'espera de la resposta d'entrevista en lot esgotat: {error}", "globalInterviewTimeout": "Temps d'espera de la resposta d'entrevista global esgotat: {error}", "envRunning": "L'entorn s'està executant i està llest per a comandes d'entrevista", "envNotRunningShort": "L'entorn no s'està executant o està tancat", "requireGraphIdAndQuery": "Proporciona graph_id i query", "initReportAgent": "Inicialitzant l'Agent d'informe..." }, "progress": { "initGraphService": "Inicialitzant el servei de construcció del graf...", "textChunking": "Dividint el text en fragments...", "creatingZepGraph": "Creant el graf Zep...", "settingOntology": "Establint la definició de l'ontologia...", "addingChunks": "Afegint {count} fragments de text...", "waitingZepProcess": "Esperant que Zep processi les dades...", "fetchingGraphData": "Obtenint les dades del graf...", "graphBuildComplete": "Construcció del graf completada", "buildFailed": "Error en la construcció: {error}", "startBuildingGraph": "Iniciant la construcció del graf...", "graphCreated": "Graf creat: {graphId}", "ontologySet": "Ontologia establerta", "textSplit": "Text dividit en {count} fragments", "fetchingGraphInfo": "Obtenint informació del graf...", "sendingBatch": "Enviant lot {current}/{total} ({chunks} fragments)...", "batchFailed": "Lot {batch} fallat: {error}", "noEpisodesWait": "No hi ha episodis als quals esperar", "waitingEpisodes": "Esperant que es processin {count} fragments de text...", "episodesTimeout": "Alguns fragments han esgotat el temps d'espera, {completed}/{total} completats", "zepProcessing": "Processant amb Zep... {completed}/{total} completats, {pending} pendents ({elapsed}s)", "processingComplete": "Processament complet: {completed}/{total}", "taskComplete": "Tasca completada", "taskFailed": "Tasca fallada", "startPreparingEnv": "Preparant l'entorn de simulació...", "connectingZepGraph": "Connectant al graf Zep...", "readingNodeData": "Llegint dades de nodes...", "readingComplete": "Fet, {count} entitats trobades", "startGenerating": "Iniciant la generació...", "analyzingRequirements": "Analitzant els requisits de simulació...", "generatingOutline": "Generant l'esquema de l'informe...", "parsingOutline": "Analitzant l'estructura de l'esquema...", "outlinePlanComplete": "Planificació de l'esquema completada", "deepSearchAndWrite": "Cerca profunda i escriptura ({current}/{max})", "initReport": "Inicialitzant l'informe...", "startPlanningOutline": "Planificant l'esquema de l'informe...", "outlineDone": "Esquema completat, {count} seccions", "generatingSection": "Generant secció: {title} ({current}/{total})", "sectionDone": "Secció {title} completada", "assemblingReport": "Assemblant l'informe complet...", "reportComplete": "Generació de l'informe completada", "reportFailed": "Error en la generació de l'informe: {error}", "savingProfiles": "Desant els fitxers de perfils...", "profilesComplete": "Fet, {count} perfils generats", "callingLLMConfig": "Cridant el LLM per generar la configuració...", "savingConfigFiles": "Desant els fitxers de configuració...", "configComplete": "Generació de la configuració completada", "generatingTimeConfig": "Generant la configuració de temps...", "generatingEventConfig": "Generant la configuració d'esdeveniments i temes candents...", "generatingAgentConfig": "Generant la configuració d'agents ({start}-{end}/{total})...", "generatingPlatformConfig": "Generant la configuració de la plataforma...", "zepSearchQuery": "Tota la informació, activitats, esdeveniments, relacions i rerefons sobre {name}", "timeConfigLabel": "Configuració de temps", "eventConfigLabel": "Configuració d'esdeveniments", "agentConfigResult": "Configuració d'agents: {count} generats", "postAssignResult": "Assignació de publicacions: {count} publicacions assignades", "profileGenerated": "[Generat] {name} ({type})", "readingGraphEntities": "Llegint entitats del graf", "generatingProfiles": "Generant perfils d'Agent", "generatingSimConfig": "Generant configuració de simulació", "preparingScripts": "Preparant scripts" }, "log": { "preparingGoBack": "Preparant el retorn al pas 2, tancant la simulació...", "closingSimEnv": "Tancant l'entorn de simulació...", "simEnvClosed": "✓ Entorn de simulació tancat", "closeSimEnvFailed": "Error en tancar l'entorn de simulació, intentant forçar l'aturada...", "simForceStopSuccess": "✓ Simulació aturada forçosament", "forceStopFailed": "Error en l'aturada forçosa: {error}", "stoppingSimProcess": "Aturant el procés de simulació...", "simStopped": "✓ Simulació aturada", "stopSimFailed": "Error en aturar la simulació: {error}", "checkStatusFailed": "Error en comprovar l'estat de la simulació: {error}", "enterStep4": "Entrant al pas 4: Generació de l'informe", "loadingSimData": "Carregant dades de simulació: {id}", "timeConfig": "Configuració de temps: {minutes} minuts per ronda", "timeConfigFetchFailed": "Error en obtenir la configuració de temps, usant valor per defecte: {minutes} min/ronda", "projectLoadSuccess": "Projecte carregat: {id}", "loadSimDataFailed": "Error en carregar les dades de simulació: {error}", "loadException": "Excepció en carregar: {error}", "graphDataLoadSuccess": "Dades del graf carregades correctament", "graphLoadFailed": "Error en carregar el graf: {error}", "graphRealtimeRefreshStart": "Actualització en temps real del graf activada (30s)", "graphRealtimeRefreshStop": "Actualització en temps real del graf aturada", "simRunViewInit": "SimulationRunView inicialitzat", "customRounds": "Rondes de simulació personalitzades: {rounds}", "enterStep3": "Entrant al pas 3: Execució de la simulació", "customRoundsConfig": "Rondes de simulació personalitzades: {rounds} rondes", "useAutoRounds": "Usant rondes de simulació configurades automàticament", "detectedSimEnvRunning": "Detectat entorn de simulació en execució, tancant...", "closeSimEnvFailedWithError": "Error en tancar l'entorn de simulació: {error}", "closeSimEnvException": "Excepció en tancar l'entorn de simulació: {error}", "detectedSimRunning": "Detectada simulació en execució, aturant...", "forceStopSimFailed": "Error en forçar l'aturada de la simulació: {error}", "forceStopSimException": "Excepció en forçar l'aturada de la simulació: {error}", "simViewInit": "SimulationView inicialitzat", "errorMissingSimId": "Error: manca simulationId", "simInstanceCreated": "Instància de simulació creada: {id}", "preparingSimEnv": "Preparant l'entorn de simulació...", "detectedExistingPrep": "Detectada preparació existent, usant-la directament", "prepareTaskStarted": "Tasca de preparació iniciada", "prepareTaskId": " └─ ID de tasca: {taskId}", "zepEntitiesFound": "Trobades {count} entitats del graf Zep", "entityTypes": " └─ Tipus d'entitats: {types}", "startPollingProgress": "Sondejant el progrés de la preparació...", "prepareFailed": "Error en la preparació: {error}", "prepareException": "Excepció en la preparació: {error}", "prepareComplete": "✓ Preparació completada", "prepareFailedWithError": "✗ Error en la preparació: {error}", "startGeneratingConfig": "Generant la configuració de simulació de doble plataforma...", "generatingAgentProfileConfig": "Generant la configuració de persones d'agent...", "generatingLLMConfig": "Cridant el LLM per generar els paràmetres de configuració de simulació...", "configComplete": "✓ Configuració de simulació generada", "configSummaryAgents": " ├─ Agents: {count}", "configSummaryHours": " ├─ Durada: {hours} hores", "configSummaryPosts": " ├─ Publicacions inicials: {count}", "configSummaryTopics": " ├─ Temes candents: {count}", "configSummaryPlatforms": " └─ Plataformes: Twitter {twitter}, Reddit {reddit}", "timeConfigDetail": "Configuració de temps: {minutes} min/ronda, {rounds} rondes en total", "narrativeDirection": "Direcció narrativa: {direction}", "envSetupComplete": "✓ Configuració de l'entorn completada, llest per simular", "startSimCustomRounds": "Iniciant la simulació, rondes personalitzades: {rounds}", "startSimAutoRounds": "Iniciant la simulació, rondes configurades automàticament: {rounds}", "startGeneratingAgentProfiles": "Generant persones d'agent...", "agentProfile": "→ Persona d'agent {current}/{total}: {name} ({profession})", "allProfilesComplete": "✓ Totes les {count} persones d'agent generades", "loadingExistingConfig": "Carregant dades de configuració existents...", "loadedAgentProfiles": "Carregats {count} perfils d'agent", "configLoadSuccess": "✓ Configuració de simulació carregada", "configSummaryPostsAlt": " └─ Publicacions inicials: {count}", "configGenerating": "Generant configuració, sondejant...", "loadConfigFailed": "Error en carregar la configuració: {error}", "step2Init": "Configuració de l'entorn del pas 2 inicialitzada", "step3Init": "Execució de la simulació del pas 3 inicialitzada", "reconnectingToSim": "Reconnectant a la simulació en curs...", "simAlreadyRunning": "La simulació ja s'està executant, reconnectant...", "simAlreadyCompleted": "La simulació ja ha finalitzat", "startingDualSim": "Iniciant la simulació paral·lela en dues plataformes...", "setMaxRounds": "Nombre màxim de rondes de simulació establert a: {rounds}", "graphMemoryUpdateEnabled": "Actualització dinàmica de la memòria del graf activada", "oldSimCleared": "✓ Registres de simulació antics eliminats, reiniciant la simulació", "engineStarted": "✓ Motor de simulació iniciat correctament", "startFailed": "✗ Error en iniciar: {error}", "startException": "✗ Excepció en iniciar: {error}", "stoppingSim": "Aturant la simulació...", "simStoppedSuccess": "✓ Simulació aturada", "stopFailed": "Error en aturar: {error}", "stopException": "Excepció en aturar: {error}", "allPlatformsCompleted": "✓ Totes les simulacions de plataforma han finalitzat", "simEndedWithError": "⚠ La simulació ha finalitzat amb un error — els resultats parcials estan disponibles per generar l'informe.", "simCompleted": "✓ Simulació completada", "reportRequestSent": "Sol·licitud de generació de l'informe enviada, espera...", "startingReportGen": "Iniciant la generació de l'informe...", "reportGenTaskStarted": "✓ Tasca de generació de l'informe iniciada: {reportId}", "reportGenFailed": "✗ Error en iniciar la generació de l'informe: {error}", "reportGenException": "✗ Excepció en la generació de l'informe: {error}", "step5Init": "Interacció profunda del pas 5 inicialitzada", "selectChatTarget": "Objectiu del xat seleccionat: {name}", "sendFailed": "Error en enviar: {error}", "sendToReportAgent": "Enviat a l'Agent d'informe: {message}...", "reportAgentReplied": "L'Agent d'informe ha respost", "sendToAgent": "Enviat a {name}: {message}...", "agentReplied": "{name} ha respost", "sendSurvey": "Enviant enquesta a {count} objectius...", "receivedReplies": "Rebudes {count} respostes", "surveySendFailed": "Error en enviar l'enquesta: {error}", "loadReportData": "Carregant dades de l'informe: {id}", "loadReportFailed": "Error en carregar l'informe: {error}", "reportDataLoaded": "Dades de l'informe carregades", "loadReportLogFailed": "Error en carregar els registres de l'informe: {error}", "loadedProfiles": "Carregats {count} individus simulats", "loadProfilesFailed": "Error en carregar els individus simulats: {error}", "interactionViewInit": "InteractionView inicialitzat", "reportViewInit": "ReportView inicialitzat", "getReportInfoFailed": "Error en obtenir la informació de l'informe: {error}", "enterStep": "Entrant al pas {step}: {name}", "returnToStep": "Tornant al pas {step}: {name}", "customSimRounds": "Rondes de simulació personalitzades: {rounds} rondes", "reconnectingToTask": "Reconnectant a la tasca activa {taskId}…", "configSaved": "✓ Configuració desada" }, "report": { "taskStarted": "Tasca de generació de l'informe iniciada", "planningStart": "Iniciant la planificació de l'esquema de l'informe", "fetchSimContext": "Obtenint el context de simulació", "planningComplete": "Planificació de l'esquema completada", "sectionStart": "Iniciant la generació de la secció: {title}", "reactThought": "Ronda ReACT {iteration} pensant", "toolCall": "Cridant eina: {toolName}", "toolResult": "L'eina {toolName} ha retornat el resultat", "llmResponse": "Resposta del LLM (crides a eines: {hasToolCalls}, resposta final: {hasFinalAnswer})", "sectionContentDone": "Generació del contingut de la secció {title} completada", "sectionComplete": "Generació de la secció {title} completada", "reportComplete": "Generació de l'informe completada", "errorOccurred": "S'ha produït un error: {error}", "agentInitDone": "ReportAgent inicialitzat: graph_id={graphId}, simulation_id={simulationId}", "executingTool": "Executant eina: {toolName}, paràmetres: {params}", "toolExecFailed": "Error en l'execució de l'eina: {toolName}, error: {error}", "startPlanningOutline": "Iniciant la planificació de l'esquema de l'informe...", "outlinePlanDone": "Planificació de l'esquema completada: {count} seccions", "outlinePlanFailed": "Error en la planificació de l'esquema: {error}", "reactGenerateSection": "ReACT generant secció: {title}", "sectionIterNone": "Secció {title} iteració {iteration}: el LLM ha retornat None", "sectionConflict": "Secció {title} ronda {iteration}: el LLM ha generat tant una crida a eina com una Resposta Final (conflicte #{conflictCount})", "sectionConflictDowngrade": "Secció {title}: {conflictCount} conflictes consecutius, degradant per truncar i executar la primera crida a eina", "sectionGenDone": "Generació de la secció {title} completada (crides a eines: {count})", "multiToolOnlyFirst": "El LLM ha intentat {total} crides a eines, executant només la primera: {toolName}", "sectionNoPrefix": "A la secció {title} li manca el prefix 'Final Answer:', adoptant la sortida del LLM com a contingut final (crides a eines: {count})", "sectionMaxIter": "La secció {title} ha assolit el nombre màxim d'iteracions, forçant la generació", "sectionForceFailed": "El LLM ha retornat None en forçar la finalització de la secció {title}, usant el missatge d'error per defecte", "sectionGenFailedContent": "(Aquesta secció no s'ha pogut generar: el LLM ha retornat una resposta buida, torna-ho a intentar més tard)", "outlineSavedToFile": "Esquema desat al fitxer: {reportId}/outline.json", "sectionSaved": "Secció desada: {reportId}/section_{sectionNum}.md", "reportGenDone": "Generació de l'informe completada: {reportId}", "reportGenFailed": "Error en la generació de l'informe: {error}", "agentChat": "Xat de l'Agent d'informe: {message}...", "fetchReportFailed": "Error en obtenir el contingut de l'informe: {error}", "outlineSaved": "Esquema desat: {reportId}", "sectionFileSaved": "Secció desada: {reportId}/{fileSuffix}", "fullReportAssembled": "Informe complet assemblat: {reportId}", "reportSaved": "Informe desat: {reportId}", "reportFolderDeleted": "Carpeta de l'informe eliminada: {reportId}", "redirectToQuickSearch": "search_graph redirigit a quick_search", "redirectToInsightForge": "get_simulation_context redirigit a insight_forge" }, "console": { "zepToolsInitialized": "ZepToolsService inicialitzat", "zepRetryAttempt": "Intent {attempt} de Zep {operation} fallat: {error}, tornant-ho a intentar en {delay}s...", "zepAllRetriesFailed": "Zep {operation} ha fallat després de {retries} intents: {error}", "graphSearch": "Cerca al graf: graph_id={graphId}, query={query}...", "graphSearchOp": "Cerca al graf (graf={graphId})", "searchComplete": "Cerca completada: {count} fets rellevants trobats", "zepSearchApiFallback": "API de cerca de Zep fallida, recorrent a la cerca local: {error}", "usingLocalSearch": "Usant la cerca local: query={query}...", "localSearchComplete": "Cerca local completada: {count} fets rellevants trobats", "localSearchFailed": "Error en la cerca local: {error}", "fetchingAllNodes": "Obtenint tots els nodes del graf {graphId}...", "fetchedNodes": "Obtinguts {count} nodes", "fetchingAllEdges": "Obtenint totes les arestes del graf {graphId}...", "fetchedEdges": "Obtingudes {count} arestes", "fetchingNodeDetail": "Obtenint el detall del node: {uuid}...", "fetchNodeDetailOp": "Obtenir detall del node (uuid={uuid}...)", "fetchNodeDetailFailed": "Error en obtenir el detall del node: {error}", "fetchingNodeEdges": "Obtenint les arestes del node {uuid}...", "foundNodeEdges": "Trobades {count} arestes relacionades amb el node", "fetchNodeEdgesFailed": "Error en obtenir les arestes del node: {error}", "fetchingEntitiesByType": "Obtenint entitats de tipus {type}...", "foundEntitiesByType": "Trobades {count} entitats de tipus {type}", "fetchingEntitySummary": "Obtenint el resum de relacions de l'entitat {name}...", "fetchingGraphStats": "Obtenint estadístiques del graf {graphId}...", "fetchingSimContext": "Obtenint el context de simulació: {requirement}...", "insightForgeStart": "Recuperació d'informació profunda InsightForge: {query}...", "generatedSubQueries": "Generades {count} subconsultes", "insightForgeComplete": "InsightForge completat: {facts} fets, {entities} entitats, {relationships} relacions", "generateSubQueriesFailed": "Error en generar les subconsultes: {error}, usant les per defecte", "panoramaSearchStart": "Cerca àmplia PanoramaSearch: {query}...", "panoramaSearchComplete": "PanoramaSearch completat: {active} actius, {historical} històrics", "quickSearchStart": "Cerca simple QuickSearch: {query}...", "quickSearchComplete": "QuickSearch completat: {count} resultats", "interviewAgentsStart": "Entrevista profunda InterviewAgents (API real): {requirement}...", "profilesNotFound": "Perfils no trobats per a la simulació {simId}", "loadedProfiles": "Carregats {count} perfils d'agent", "selectedAgentsForInterview": "Seleccionats {count} agents per a l'entrevista: {indices}", "generatedInterviewQuestions": "Generades {count} preguntes d'entrevista", "callingBatchInterviewApi": "Cridant l'API d'entrevista en lot (doble plataforma): {count} agents", "interviewApiReturned": "L'API d'entrevista ha retornat: {count} resultats, èxit={success}", "interviewApiReturnedFailure": "L'API d'entrevista ha retornat un error: {error}", "interviewApiCallFailed": "La crida a l'API d'entrevista ha fallat (l'entorn no s'executa?): {error}", "interviewApiCallException": "Excepció en la crida a l'API d'entrevista: {error}", "interviewAgentsComplete": "InterviewAgents completat: {count} agents entrevistats (doble plataforma)", "loadedRedditProfiles": "Carregats {count} perfils de reddit_profiles.json", "readRedditProfilesFailed": "Error en llegir reddit_profiles.json: {error}", "loadedTwitterProfiles": "Carregats {count} perfils de twitter_profiles.csv", "readTwitterProfilesFailed": "Error en llegir twitter_profiles.csv: {error}", "llmSelectAgentFailed": "La selecció d'agents per LLM ha fallat, usant la selecció per defecte: {error}", "generateInterviewQuestionsFailed": "Error en generar les preguntes d'entrevista: {error}", "generateInterviewSummaryFailed": "Error en generar el resum de l'entrevista: {error}" }, "login": { "title": "Accés", "subtitle": "// Accés autenticat requerit", "username": "Usuari", "usernamePlaceholder": "demo", "password": "Contrasenya", "passwordPlaceholder": "••••••••", "submit": "Entrar", "loading": "Autenticant...", "invalidCredentials": "Usuari o contrasenya incorrectes" }, "error": { "filesLostAfterRefresh": "Els fitxers s'han perdut en refrescar la pàgina. Redirigint a l'inici per tornar a seleccionar-los…" } }