workflow.ts 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498
  1. const translation = {
  2. common: {
  3. undo: 'Deshacer',
  4. redo: 'Rehacer',
  5. editing: 'Editando',
  6. autoSaved: 'Guardado automático',
  7. unpublished: 'No publicado',
  8. published: 'Publicado',
  9. publish: 'Publicar',
  10. update: 'Actualizar',
  11. run: 'Ejecutar',
  12. running: 'Ejecutando',
  13. inRunMode: 'En modo de ejecución',
  14. inPreview: 'En vista previa',
  15. inPreviewMode: 'En modo de vista previa',
  16. preview: 'Vista previa',
  17. viewRunHistory: 'Ver historial de ejecución',
  18. runHistory: 'Historial de ejecución',
  19. goBackToEdit: 'Volver al editor',
  20. conversationLog: 'Registro de conversación',
  21. features: 'Funcionalidades',
  22. debugAndPreview: 'Vista previa',
  23. restart: 'Reiniciar',
  24. currentDraft: 'Borrador actual',
  25. currentDraftUnpublished: 'Borrador actual no publicado',
  26. latestPublished: 'Último publicado',
  27. publishedAt: 'Publicado el',
  28. restore: 'Restaurar',
  29. runApp: 'Ejecutar aplicación',
  30. batchRunApp: 'Ejecutar aplicación en lote',
  31. accessAPIReference: 'Acceder a la referencia de la API',
  32. embedIntoSite: 'Insertar en el sitio',
  33. addTitle: 'Agregar título...',
  34. addDescription: 'Agregar descripción...',
  35. noVar: 'Sin variable',
  36. searchVar: 'Buscar variable',
  37. variableNamePlaceholder: 'Nombre de la variable',
  38. setVarValuePlaceholder: 'Establecer variable',
  39. needConnecttip: 'Este paso no está conectado a nada',
  40. maxTreeDepth: 'Límite máximo de {{depth}} nodos por rama',
  41. needEndNode: 'Debe agregarse el bloque de Fin',
  42. needAnswerNode: 'Debe agregarse el bloque de Respuesta',
  43. workflowProcess: 'Proceso de flujo de trabajo',
  44. notRunning: 'Aún no se está ejecutando',
  45. previewPlaceholder: 'Ingrese contenido en el cuadro de abajo para comenzar a depurar el Chatbot',
  46. effectVarConfirm: {
  47. title: 'Eliminar variable',
  48. content: 'La variable se utiliza en otros nodos. ¿Aún quieres eliminarla?',
  49. },
  50. insertVarTip: 'Presiona la tecla \'/\' para insertar rápidamente',
  51. processData: 'Procesar datos',
  52. input: 'Entrada',
  53. output: 'Salida',
  54. jinjaEditorPlaceholder: 'Escribe \'/\' o \'{\' para insertar una variable',
  55. viewOnly: 'Solo vista',
  56. showRunHistory: 'Mostrar historial de ejecución',
  57. enableJinja: 'Habilitar soporte de plantillas Jinja',
  58. learnMore: 'Más información',
  59. copy: 'Copiar',
  60. duplicate: 'Duplicar',
  61. addBlock: 'Agregar bloque',
  62. pasteHere: 'Pegar aquí',
  63. pointerMode: 'Modo puntero',
  64. handMode: 'Modo mano',
  65. model: 'Modelo',
  66. workflowAsTool: 'Flujo de trabajo como herramienta',
  67. configureRequired: 'Configuración requerida',
  68. configure: 'Configurar',
  69. manageInTools: 'Administrar en Herramientas',
  70. workflowAsToolTip: 'Se requiere la reconfiguración de la herramienta después de la actualización del flujo de trabajo.',
  71. viewDetailInTracingPanel: 'Ver detalles',
  72. syncingData: 'Sincronizando datos, solo unos segundos.',
  73. importDSL: 'Importar DSL',
  74. importDSLTip: 'El borrador actual se sobrescribirá. Exporta el flujo de trabajo como respaldo antes de importar.',
  75. backupCurrentDraft: 'Respaldar borrador actual',
  76. chooseDSL: 'Elegir archivo DSL (yml)',
  77. overwriteAndImport: 'Sobrescribir e importar',
  78. importFailure: 'Error al importar',
  79. importSuccess: 'Importación exitosa',
  80. },
  81. env: {
  82. envPanelTitle: 'Variables de Entorno',
  83. envDescription: 'Las variables de entorno se pueden utilizar para almacenar información privada y credenciales. Son de solo lectura y se pueden separar del archivo DSL durante la exportación.',
  84. envPanelButton: 'Añadir Variable',
  85. modal: {
  86. title: 'Añadir Variable de Entorno',
  87. editTitle: 'Editar Variable de Entorno',
  88. type: 'Tipo',
  89. name: 'Nombre',
  90. namePlaceholder: 'nombre de env',
  91. value: 'Valor',
  92. valuePlaceholder: 'valor de env',
  93. secretTip: 'Se utiliza para definir información o datos sensibles, con configuraciones DSL configuradas para prevenir fugas.',
  94. },
  95. export: {
  96. title: '¿Exportar variables de entorno secretas?',
  97. checkbox: 'Exportar valores secretos',
  98. ignore: 'Exportar DSL',
  99. export: 'Exportar DSL con valores secretos',
  100. },
  101. },
  102. changeHistory: {
  103. title: 'Historial de cambios',
  104. placeholder: 'Aún no has realizado cambios',
  105. clearHistory: 'Borrar historial',
  106. hint: 'Sugerencia',
  107. hintText: 'Tus acciones de edición se registran en un historial de cambios, que se almacena en tu dispositivo durante esta sesión. Este historial se borrará cuando salgas del editor.',
  108. stepBackward_one: '{{count}} paso hacia atrás',
  109. stepBackward_other: '{{count}} pasos hacia atrás',
  110. stepForward_one: '{{count}} paso hacia adelante',
  111. stepForward_other: '{{count}} pasos hacia adelante',
  112. sessionStart: 'Inicio de sesión',
  113. currentState: 'Estado actual',
  114. nodeTitleChange: 'Se cambió el título del bloque',
  115. nodeDescriptionChange: 'Se cambió la descripción del bloque',
  116. nodeDragStop: 'Bloque movido',
  117. nodeChange: 'Bloque cambiado',
  118. nodeConnect: 'Bloque conectado',
  119. nodePaste: 'Bloque pegado',
  120. nodeDelete: 'Bloque eliminado',
  121. nodeAdd: 'Bloque agregado',
  122. nodeResize: 'Bloque redimensionado',
  123. noteAdd: 'Nota agregada',
  124. noteChange: 'Nota cambiada',
  125. noteDelete: 'Nota eliminada',
  126. edgeDelete: 'Bloque desconectado',
  127. },
  128. errorMsg: {
  129. fieldRequired: 'Se requiere {{field}}',
  130. authRequired: 'Se requiere autorización',
  131. invalidJson: '{{field}} no es un JSON válido',
  132. fields: {
  133. variable: 'Nombre de la variable',
  134. variableValue: 'Valor de la variable',
  135. code: 'Código',
  136. model: 'Modelo',
  137. rerankModel: 'Modelo de reordenamiento',
  138. },
  139. invalidVariable: 'Variable no válida',
  140. },
  141. singleRun: {
  142. testRun: 'Ejecución de prueba',
  143. startRun: 'Iniciar ejecución',
  144. running: 'Ejecutando',
  145. testRunIteration: 'Iteración de ejecución de prueba',
  146. back: 'Atrás',
  147. iteration: 'Iteración',
  148. },
  149. tabs: {
  150. 'searchBlock': 'Buscar bloque',
  151. 'blocks': 'Bloques',
  152. 'tools': 'Herramientas',
  153. 'allTool': 'Todos',
  154. 'builtInTool': 'Incorporadas',
  155. 'customTool': 'Personalizadas',
  156. 'workflowTool': 'Flujo de trabajo',
  157. 'question-understand': 'Entender pregunta',
  158. 'logic': 'Lógica',
  159. 'transform': 'Transformar',
  160. 'utilities': 'Utilidades',
  161. 'noResult': 'No se encontraron coincidencias',
  162. },
  163. blocks: {
  164. 'start': 'Inicio',
  165. 'end': 'Fin',
  166. 'answer': 'Respuesta',
  167. 'llm': 'LLM',
  168. 'knowledge-retrieval': 'Recuperación de conocimiento',
  169. 'question-classifier': 'Clasificador de preguntas',
  170. 'if-else': 'SI/SINO',
  171. 'code': 'Código',
  172. 'template-transform': 'Plantilla',
  173. 'http-request': 'Solicitud HTTP',
  174. 'variable-assigner': 'Asignador de variables',
  175. 'variable-aggregator': 'Agregador de variables',
  176. 'iteration-start': 'Inicio de iteración',
  177. 'iteration': 'Iteración',
  178. 'parameter-extractor': 'Extractor de parámetros',
  179. },
  180. blocksAbout: {
  181. 'start': 'Define los parámetros iniciales para iniciar un flujo de trabajo',
  182. 'end': 'Define el final y el tipo de resultado de un flujo de trabajo',
  183. 'answer': 'Define el contenido de respuesta de una conversación de chat',
  184. 'llm': 'Invoca modelos de lenguaje grandes para responder preguntas o procesar lenguaje natural',
  185. 'knowledge-retrieval': 'Te permite consultar contenido de texto relacionado con las preguntas de los usuarios desde el conocimiento',
  186. 'question-classifier': 'Define las condiciones de clasificación de las preguntas de los usuarios, LLM puede definir cómo progresa la conversación en función de la descripción de clasificación',
  187. 'if-else': 'Te permite dividir el flujo de trabajo en dos ramas basadas en condiciones SI/SINO',
  188. 'code': 'Ejecuta un fragmento de código Python o NodeJS para implementar lógica personalizada',
  189. 'template-transform': 'Convierte datos en una cadena utilizando la sintaxis de plantillas Jinja',
  190. 'http-request': 'Permite enviar solicitudes al servidor a través del protocolo HTTP',
  191. 'variable-assigner': 'Agrega variables de múltiples ramas en una sola variable para configurar de manera unificada los nodos descendentes.',
  192. 'variable-aggregator': 'Agrega variables de múltiples ramas en una sola variable para configurar de manera unificada los nodos descendentes.',
  193. 'iteration': 'Realiza múltiples pasos en un objeto de lista hasta que se generen todos los resultados.',
  194. 'parameter-extractor': 'Utiliza LLM para extraer parámetros estructurados del lenguaje natural para invocaciones de herramientas o solicitudes HTTP.',
  195. },
  196. operator: {
  197. zoomIn: 'Acercar',
  198. zoomOut: 'Alejar',
  199. zoomTo50: 'Zoom al 50%',
  200. zoomTo100: 'Zoom al 100%',
  201. zoomToFit: 'Ajustar al tamaño',
  202. },
  203. panel: {
  204. userInputField: 'Campo de entrada del usuario',
  205. changeBlock: 'Cambiar bloque',
  206. helpLink: 'Enlace de ayuda',
  207. about: 'Acerca de',
  208. createdBy: 'Creado por ',
  209. nextStep: 'Siguiente paso',
  210. addNextStep: 'Agregar el siguiente bloque en este flujo de trabajo',
  211. selectNextStep: 'Seleccionar siguiente bloque',
  212. runThisStep: 'Ejecutar este paso',
  213. checklist: 'Lista de verificación',
  214. checklistTip: 'Asegúrate de resolver todos los problemas antes de publicar',
  215. checklistResolved: 'Se resolvieron todos los problemas',
  216. organizeBlocks: 'Organizar bloques',
  217. change: 'Cambiar',
  218. },
  219. nodes: {
  220. common: {
  221. outputVars: 'Variables de salida',
  222. insertVarTip: 'Insertar variable',
  223. memory: {
  224. memory: 'Memoria',
  225. memoryTip: 'Configuración de memoria de chat',
  226. windowSize: 'Tamaño de ventana',
  227. conversationRoleName: 'Nombre del rol de conversación',
  228. user: 'Prefijo de usuario',
  229. assistant: 'Prefijo de asistente',
  230. },
  231. memories: {
  232. title: 'Memorias',
  233. tip: 'Memoria de chat',
  234. builtIn: 'Incorporada',
  235. },
  236. },
  237. start: {
  238. required: 'requerido',
  239. inputField: 'Campo de entrada',
  240. builtInVar: 'Variables incorporadas',
  241. outputVars: {
  242. query: 'Entrada del usuario',
  243. memories: {
  244. des: 'Historial de conversación',
  245. type: 'tipo de mensaje',
  246. content: 'contenido del mensaje',
  247. },
  248. files: 'Lista de archivos',
  249. },
  250. noVarTip: 'Establece las entradas que se pueden utilizar en el flujo de trabajo',
  251. },
  252. end: {
  253. outputs: 'Salidas',
  254. output: {
  255. type: 'tipo de salida',
  256. variable: 'variable de salida',
  257. },
  258. type: {
  259. 'none': 'Ninguno',
  260. 'plain-text': 'Texto sin formato',
  261. 'structured': 'Estructurado',
  262. },
  263. },
  264. answer: {
  265. answer: 'Respuesta',
  266. outputVars: 'Variables de salida',
  267. },
  268. llm: {
  269. model: 'modelo',
  270. variables: 'variables',
  271. context: 'contexto',
  272. contextTooltip: 'Puedes importar el conocimiento como contexto',
  273. notSetContextInPromptTip: 'Para habilitar la función de contexto, completa la variable de contexto en PROMPT.',
  274. prompt: 'indicación',
  275. roleDescription: {
  276. system: 'Proporciona instrucciones generales para la conversación',
  277. user: 'Proporciona instrucciones, consultas o cualquier entrada basada en texto al modelo',
  278. assistant: 'Las respuestas del modelo basadas en los mensajes del usuario',
  279. },
  280. addMessage: 'Agregar mensaje',
  281. vision: 'visión',
  282. files: 'Archivos',
  283. resolution: {
  284. name: 'Resolución',
  285. high: 'Alta',
  286. low: 'Baja',
  287. },
  288. outputVars: {
  289. output: 'Generar contenido',
  290. usage: 'Información de uso del modelo',
  291. },
  292. singleRun: {
  293. variable: 'Variable',
  294. },
  295. sysQueryInUser: 'se requiere sys.query en el mensaje del usuario',
  296. },
  297. knowledgeRetrieval: {
  298. queryVariable: 'Variable de consulta',
  299. knowledge: 'Conocimiento',
  300. outputVars: {
  301. output: 'Datos segmentados de recuperación',
  302. content: 'Contenido segmentado',
  303. title: 'Título segmentado',
  304. icon: 'Ícono segmentado',
  305. url: 'URL segmentada',
  306. metadata: 'Metadatos adicionales',
  307. },
  308. },
  309. http: {
  310. inputVars: 'Variables de entrada',
  311. api: 'API',
  312. apiPlaceholder: 'Ingresa la URL, escribe \'/\' para insertar una variable',
  313. notStartWithHttp: 'La API debe comenzar con http:// o https://',
  314. key: 'Clave',
  315. value: 'Valor',
  316. bulkEdit: 'Edición masiva',
  317. keyValueEdit: 'Edición clave-valor',
  318. headers: 'Encabezados',
  319. params: 'Parámetros',
  320. body: 'Cuerpo',
  321. outputVars: {
  322. body: 'Contenido de la respuesta',
  323. statusCode: 'Código de estado de la respuesta',
  324. headers: 'Lista de encabezados de respuesta en formato JSON',
  325. files: 'Lista de archivos',
  326. },
  327. authorization: {
  328. 'authorization': 'Autorización',
  329. 'authorizationType': 'Tipo de autorización',
  330. 'no-auth': 'Ninguna',
  331. 'api-key': 'Clave de API',
  332. 'auth-type': 'Tipo de autenticación',
  333. 'basic': 'Básica',
  334. 'bearer': 'Bearer',
  335. 'custom': 'Personalizada',
  336. 'api-key-title': 'Clave de API',
  337. 'header': 'Encabezado',
  338. },
  339. insertVarPlaceholder: 'escribe \'/\' para insertar una variable',
  340. timeout: {
  341. title: 'Tiempo de espera',
  342. connectLabel: 'Tiempo de espera de conexión',
  343. connectPlaceholder: 'Ingresa el tiempo de espera de conexión en segundos',
  344. readLabel: 'Tiempo de espera de lectura',
  345. readPlaceholder: 'Ingresa el tiempo de espera de lectura en segundos',
  346. writeLabel: 'Tiempo de espera de escritura',
  347. writePlaceholder: 'Ingresa el tiempo de espera de escritura en segundos',
  348. },
  349. },
  350. code: {
  351. inputVars: 'Variables de entrada',
  352. outputVars: 'Variables de salida',
  353. advancedDependencies: 'Dependencias avanzadas',
  354. advancedDependenciesTip: 'Agrega algunas dependencias precargadas que consumen más tiempo o no son incorporadas por defecto aquí',
  355. searchDependencies: 'Buscar dependencias',
  356. },
  357. templateTransform: {
  358. inputVars: 'Variables de entrada',
  359. code: 'Código',
  360. codeSupportTip: 'Solo admite Jinja2',
  361. outputVars: {
  362. output: 'Contenido transformado',
  363. },
  364. },
  365. ifElse: {
  366. if: 'Si',
  367. else: 'Sino',
  368. elseDescription: 'Se utiliza para definir la lógica que se debe ejecutar cuando no se cumple la condición del si.',
  369. and: 'y',
  370. or: 'o',
  371. operator: 'Operador',
  372. notSetVariable: 'Por favor, establece primero la variable',
  373. comparisonOperator: {
  374. 'contains': 'contiene',
  375. 'not contains': 'no contiene',
  376. 'start with': 'comienza con',
  377. 'end with': 'termina con',
  378. 'is': 'es',
  379. 'is not': 'no es',
  380. 'empty': 'está vacío',
  381. 'not empty': 'no está vacío',
  382. 'null': 'es nulo',
  383. 'not null': 'no es nulo',
  384. },
  385. enterValue: 'Ingresa un valor',
  386. addCondition: 'Agregar condición',
  387. conditionNotSetup: 'Condición NO configurada',
  388. },
  389. variableAssigner: {
  390. title: 'Asignar variables',
  391. outputType: 'Tipo de salida',
  392. varNotSet: 'Variable no establecida',
  393. noVarTip: 'Agrega las variables que se asignarán',
  394. type: {
  395. string: 'Cadena',
  396. number: 'Número',
  397. object: 'Objeto',
  398. array: 'Arreglo',
  399. },
  400. aggregationGroup: 'Grupo de agregación',
  401. aggregationGroupTip: 'Al habilitar esta función, el agregador de variables puede agregar múltiples conjuntos de variables.',
  402. addGroup: 'Agregar grupo',
  403. outputVars: {
  404. varDescribe: 'Salida de {{groupName}}',
  405. },
  406. setAssignVariable: 'Establecer variable asignada',
  407. },
  408. tool: {
  409. toAuthorize: 'Para autorizar',
  410. inputVars: 'Variables de entrada',
  411. outputVars: {
  412. text: 'Contenido generado por la herramienta',
  413. files: {
  414. title: 'Archivos generados por la herramienta',
  415. type: 'Tipo de soporte. Ahora solo admite imágenes',
  416. transfer_method: 'Método de transferencia. El valor es remote_url o local_file',
  417. url: 'URL de la imagen',
  418. upload_file_id: 'ID de archivo cargado',
  419. },
  420. json: 'JSON generado por la herramienta',
  421. },
  422. },
  423. questionClassifiers: {
  424. model: 'modelo',
  425. inputVars: 'Variables de entrada',
  426. outputVars: {
  427. className: 'Nombre de la clase',
  428. },
  429. class: 'Clase',
  430. classNamePlaceholder: 'Escribe el nombre de tu clase',
  431. advancedSetting: 'Configuración avanzada',
  432. topicName: 'Nombre del tema',
  433. topicPlaceholder: 'Escribe el nombre de tu tema',
  434. addClass: 'Agregar clase',
  435. instruction: 'Instrucción',
  436. instructionTip: 'Input additional instructions to help the question classifier better understand how to categorize questions.',
  437. instructionPlaceholder: 'Write your instruction',
  438. },
  439. parameterExtractor: {
  440. inputVar: 'Variable de entrada',
  441. extractParameters: 'Extraer parámetros',
  442. importFromTool: 'Importar desde herramientas',
  443. addExtractParameter: 'Agregar parámetro de extracción',
  444. addExtractParameterContent: {
  445. name: 'Nombre',
  446. namePlaceholder: 'Nombre del parámetro de extracción',
  447. type: 'Tipo',
  448. typePlaceholder: 'Tipo de parámetro de extracción',
  449. description: 'Descripción',
  450. descriptionPlaceholder: 'Descripción del parámetro de extracción',
  451. required: 'Requerido',
  452. requiredContent: 'El campo requerido se utiliza solo como referencia para la inferencia del modelo, y no para la validación obligatoria de la salida del parámetro.',
  453. },
  454. extractParametersNotSet: 'Parámetros de extracción no configurados',
  455. instruction: 'Instrucción',
  456. instructionTip: 'Ingrese instrucciones adicionales para ayudar al extractor de parámetros a entender cómo extraer parámetros.',
  457. advancedSetting: 'Configuración avanzada',
  458. reasoningMode: 'Modo de razonamiento',
  459. reasoningModeTip: 'Puede elegir el modo de razonamiento apropiado basado en la capacidad del modelo para responder a instrucciones para llamadas de funciones o indicaciones.',
  460. isSuccess: 'Es éxito. En caso de éxito el valor es 1, en caso de fallo el valor es 0.',
  461. errorReason: 'Motivo del error',
  462. },
  463. iteration: {
  464. deleteTitle: '¿Eliminar nodo de iteración?',
  465. deleteDesc: 'Eliminar el nodo de iteración eliminará todos los nodos secundarios',
  466. input: 'Entrada',
  467. output: 'Variables de salida',
  468. iteration_one: '{{count}} Iteración',
  469. iteration_other: '{{count}} Iteraciones',
  470. currentIteration: 'Iteración actual',
  471. },
  472. note: {
  473. addNote: 'Agregar nota',
  474. editor: {
  475. placeholder: 'Escribe tu nota...',
  476. small: 'Pequeño',
  477. medium: 'Mediano',
  478. large: 'Grande',
  479. bold: 'Negrita',
  480. italic: 'Itálica',
  481. strikethrough: 'Tachado',
  482. link: 'Enlace',
  483. openLink: 'Abrir',
  484. unlink: 'Quitar enlace',
  485. enterUrl: 'Introducir URL...',
  486. invalidUrl: 'URL inválida',
  487. bulletList: 'Lista de viñetas',
  488. showAuthor: 'Mostrar autor',
  489. },
  490. },
  491. tracing: {
  492. stopBy: 'Detenido por {{user}}',
  493. },
  494. },
  495. }
  496. export default translation