workflow.ts 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  1. const translation = {
  2. common: {
  3. editing: '편집 중',
  4. autoSaved: '자동 저장됨',
  5. unpublished: '미게시',
  6. published: '게시됨',
  7. publish: '게시',
  8. update: '업데이트',
  9. run: '실행',
  10. running: '실행 중',
  11. inRunMode: '실행 모드',
  12. inPreview: '미리보기 중',
  13. inPreviewMode: '미리보기 모드',
  14. preview: '미리보기',
  15. viewRunHistory: '실행 기록 보기',
  16. runHistory: '실행 기록',
  17. goBackToEdit: '편집으로 돌아가기',
  18. conversationLog: '대화 로그',
  19. features: '기능',
  20. debugAndPreview: '디버그 및 미리보기',
  21. restart: '재시작',
  22. currentDraft: '현재 초안',
  23. currentDraftUnpublished: '현재 초안 (게시되지 않음)',
  24. latestPublished: '최신 게시됨',
  25. publishedAt: '게시 시간',
  26. restore: '복원',
  27. runApp: '앱 실행',
  28. batchRunApp: '일괄 실행 앱',
  29. accessAPIReference: 'API 참조에 액세스',
  30. embedIntoSite: '사이트에 포함',
  31. addTitle: '제목 추가...',
  32. addDescription: '설명 추가...',
  33. noVar: '변수 없음',
  34. searchVar: '변수 검색',
  35. variableNamePlaceholder: '변수명',
  36. setVarValuePlaceholder: '변수 값 설정',
  37. needConnecttip: '이 단계에는 연결된 항목이 없습니다',
  38. maxTreeDepth: '각 브랜치 당 최대 {{depth}} 노드 제한',
  39. needEndNode: '종료 블록을 추가해야 합니다',
  40. needAnswerNode: '응답 블록을 추가해야 합니다',
  41. workflowProcess: '워크플로우 처리',
  42. notRunning: '아직 실행되지 않음',
  43. previewPlaceholder: '챗봇 디버깅을 시작하려면 아래 상자에 내용을 입력하세요',
  44. effectVarConfirm: {
  45. title: '변수 삭제',
  46. content: '다른 노드에서 변수를 사용하고 있습니다. 그래도 삭제하시겠습니까?',
  47. },
  48. insertVarTip: '빠른 삽입을 위해 \'/\' 키를 누르세요',
  49. processData: '데이터 처리',
  50. input: '입력',
  51. output: '출력',
  52. jinjaEditorPlaceholder: '\'/\' 또는 \'{\'를 입력하여 변수를 삽입하세요.',
  53. viewOnly: '보기 모드',
  54. showRunHistory: '실행 기록 보기',
  55. copy: '복사',
  56. duplicate: '복제',
  57. addBlock: '블록 추가',
  58. pasteHere: '여기에 붙여넣기',
  59. pointerMode: '선택 모드',
  60. handMode: '시점 모드',
  61. },
  62. errorMsg: {
  63. fieldRequired: '{{field}}은(는) 필수입니다',
  64. authRequired: '인증이 필요합니다',
  65. invalidJson: '{{field}}이(가) 유효하지 않습니다',
  66. fields: {
  67. variable: '변수명',
  68. variableValue: '변수 값',
  69. code: '코드',
  70. model: '모델',
  71. rerankModel: '재순위 모델',
  72. },
  73. invalidVariable: '유효하지 않은 변수',
  74. },
  75. singleRun: {
  76. testRun: '테스트 실행',
  77. startRun: '실행 시작',
  78. running: '실행 중',
  79. },
  80. tabs: {
  81. 'searchBlock': '블록 검색',
  82. 'blocks': '블록',
  83. 'builtInTool': '내장 도구',
  84. 'customTool': '커스텀 도구',
  85. 'question-understand': '질문 이해',
  86. 'logic': '논리',
  87. 'transform': '변환',
  88. 'utilities': '유틸리티',
  89. 'noResult': '일치하는 결과 없음',
  90. },
  91. blocks: {
  92. 'start': '시작',
  93. 'end': '끝',
  94. 'answer': '답변',
  95. 'llm': 'LLM',
  96. 'knowledge-retrieval': '지식 검색',
  97. 'question-classifier': '질문 분류기',
  98. 'if-else': 'IF/ELSE',
  99. 'code': '코드',
  100. 'template-transform': '템플릿',
  101. 'http-request': 'HTTP 요청',
  102. 'variable-assigner': '변수 할당기',
  103. },
  104. blocksAbout: {
  105. 'start': '워크플로우 시작을 위한 매개변수를 정의합니다',
  106. 'end': '워크플로우 종료 및 결과 유형을 정의합니다',
  107. 'answer': '채팅 대화의 응답 내용을 정의합니다',
  108. 'llm': '대규모 언어 모델을 호출하여 질문에 답변하거나 자연어를 처리합니다',
  109. 'knowledge-retrieval': '사용자의 질문과 관련된 텍스트 콘텐츠를 지식에서 쿼리할 수 있도록 합니다',
  110. 'question-classifier': '사용자의 질문 분류 조건을 정의하고, LLM은 분류 기술에 따라 대화가 어떻게 진행될지 정의할 수 있습니다',
  111. 'if-else': 'IF/ELSE 조건에 따라 워크플로우를 두 가지 분기로 나눌 수 있습니다',
  112. 'code': '사용자 정의 로직을 구현하기 위해 Python 또는 NodeJS 코드를 실행합니다',
  113. 'template-transform': 'Jinja 템플릿 구문을 사용하여 데이터를 문자열로 변환합니다',
  114. 'http-request': 'HTTP 프로토콜을 통해 서버 요청을 보낼 수 있습니다',
  115. 'variable-assigner': '다른 분기에서 동일한 변수에 변수를 할당하여 후속 노드의 통일된 구성을 달성할 수 있습니다',
  116. },
  117. operator: {
  118. zoomIn: '확대',
  119. zoomOut: '축소',
  120. zoomTo50: '50%로 확대',
  121. zoomTo100: '100%로 확대',
  122. zoomToFit: '적합하게 확대',
  123. },
  124. panel: {
  125. userInputField: '사용자 입력 필드',
  126. changeBlock: '블록 변경',
  127. helpLink: '도움말 링크',
  128. about: '정보',
  129. createdBy: '작성자',
  130. nextStep: '다음 단계',
  131. addNextStep: '이 워크플로우에 다음 블록 추가',
  132. selectNextStep: '다음 블록 선택',
  133. runThisStep: '이 단계 실행',
  134. checklist: '체크리스트',
  135. checklistTip: '게시하기 전에 모든 문제가 해결되었는지 확인하세요',
  136. checklistResolved: '모든 문제가 해결되었습니다',
  137. organizeBlocks: '블록 정리',
  138. change: '변경',
  139. },
  140. nodes: {
  141. common: {
  142. outputVars: '출력 변수',
  143. insertVarTip: '변수 삽입',
  144. memory: {
  145. memory: '메모리',
  146. memoryTip: '채팅 메모리 설정',
  147. windowSize: '윈도우 크기',
  148. conversationRoleName: '대화 역할 이름',
  149. user: '사용자 접두사',
  150. assistant: '어시스턴트 접두사',
  151. },
  152. memories: {
  153. title: '메모리',
  154. tip: '채팅 메모리',
  155. builtIn: '내장',
  156. },
  157. },
  158. start: {
  159. required: '필수',
  160. inputField: '입력 필드',
  161. builtInVar: '내장 변수',
  162. outputVars: {
  163. query: '사용자 입력',
  164. memories: {
  165. des: '대화 기록',
  166. type: '메시지 유형',
  167. content: '메시지 내용',
  168. },
  169. files: '파일 목록',
  170. },
  171. noVarTip: '워크플로우에서 사용할 수 있는 입력을 설정합니다',
  172. },
  173. end: {
  174. outputs: '출력',
  175. output: {
  176. type: '출력 유형',
  177. variable: '출력 변수',
  178. },
  179. type: {
  180. 'none': '없음',
  181. 'plain-text': '평문',
  182. 'structured': '구조화',
  183. },
  184. },
  185. answer: {
  186. answer: '답변',
  187. outputVars: '출력 변수',
  188. },
  189. llm: {
  190. model: '모델',
  191. variables: '변수',
  192. context: '컨텍스트',
  193. contextTooltip: '컨텍스트로 지식을 가져올 수 있습니다',
  194. notSetContextInPromptTip: '컨텍스트 기능을 활성화하려면 PROMPT에 컨텍스트 변수를 입력하세요.',
  195. prompt: '프롬프트',
  196. roleDescription: {
  197. system: '대화의 고수준 명령을 제공합니다',
  198. user: '모델에 대한 지시, 쿼리 또는 텍스트 기반 입력을 제공합니다',
  199. assistant: '사용자 메시지를 기반으로 모델의 응답을 생성합니다',
  200. },
  201. addMessage: '메시지 추가',
  202. vision: '비전',
  203. files: '파일',
  204. resolution: {
  205. name: '해상도',
  206. high: '높음',
  207. low: '낮음',
  208. },
  209. outputVars: {
  210. output: '컨텐츠 생성',
  211. usage: '모델 사용 정보',
  212. },
  213. singleRun: {
  214. variable: '변수',
  215. },
  216. sysQueryInUser: '사용자 메시지에 sys.query가 요구됩니다.',
  217. },
  218. knowledgeRetrieval: {
  219. queryVariable: '쿼리 변수',
  220. knowledge: '지식',
  221. outputVars: {
  222. output: '검색된 세그먼트화된 데이터',
  223. content: '세그먼트화된 콘텐츠',
  224. title: '세그먼트화된 제목',
  225. icon: '세그먼트화된 아이콘',
  226. url: '세그먼트화된 URL',
  227. metadata: '기타 메타데이터',
  228. },
  229. },
  230. http: {
  231. inputVars: '입력 변수',
  232. api: 'API',
  233. apiPlaceholder: 'URL 입력, \'/\'을 입력하여 변수 삽입',
  234. notStartWithHttp: 'API는 http:// 또는 https://로 시작해야 합니다',
  235. key: '키',
  236. value: '값',
  237. bulkEdit: '일괄 수정',
  238. keyValueEdit: '키-값 수정',
  239. headers: '헤더',
  240. params: '파라미터',
  241. body: '바디',
  242. outputVars: {
  243. body: '응답 콘텐츠',
  244. statusCode: '응답 상태 코드',
  245. headers: '응답 헤더 목록 JSON',
  246. files: '파일 목록',
  247. },
  248. authorization: {
  249. 'authorization': '인증',
  250. 'authorizationType': '인증 유형',
  251. 'no-auth': '없음',
  252. 'api-key': 'API 키',
  253. 'auth-type': '인증 유형',
  254. 'basic': '기본',
  255. 'bearer': 'Bearer',
  256. 'custom': '사용자 정의',
  257. 'api-key-title': 'API 키',
  258. 'header': '헤더',
  259. },
  260. insertVarPlaceholder: '변수 삽입을 위해 \'/\'를 입력하세요',
  261. timeout: {
  262. title: '타임아웃',
  263. connectLabel: '연결 타임아웃',
  264. connectPlaceholder: '연결 타임아웃을 초 단위로 입력하세요',
  265. readLabel: '읽기 타임아웃',
  266. readPlaceholder: '읽기 타임아웃을 초 단위로 입력하세요',
  267. writeLabel: '쓰기 타임아웃',
  268. writePlaceholder: '쓰기 타임아웃을 초 단위로 입력하세요',
  269. },
  270. },
  271. code: {
  272. inputVars: '입력 변수',
  273. outputVars: '출력 변수',
  274. },
  275. templateTransform: {
  276. inputVars: '입력 변수',
  277. code: '코드',
  278. codeSupportTip: 'Jinja2만 지원됩니다',
  279. outputVars: {
  280. output: '변환된 콘텐츠',
  281. },
  282. },
  283. ifElse: {
  284. if: '만약',
  285. else: '그렇지 않으면',
  286. elseDescription: 'IF 조건이 충족되지 않을 경우 실행할 로직을 정의합니다.',
  287. and: '그리고',
  288. or: '또는',
  289. operator: '연산자',
  290. notSetVariable: '먼저 변수를 설정하세요',
  291. comparisonOperator: {
  292. 'contains': '포함',
  293. 'not contains': '미포함',
  294. 'start with': '시작하는',
  295. 'end with': '끝나는',
  296. 'is': '일치',
  297. 'is not': '불일치',
  298. 'empty': '빈 값',
  299. 'not empty': '빈 값이 아님',
  300. 'null': 'null',
  301. 'not null': 'null이 아님',
  302. },
  303. enterValue: '값을 입력하세요',
  304. addCondition: '조건 추가',
  305. conditionNotSetup: '조건이 설정되지 않았습니다',
  306. },
  307. variableAssigner: {
  308. title: '변수 할당',
  309. outputType: '출력 유형',
  310. outputVarType: '출력 변수 유형',
  311. varNotSet: '변수가 설정되지 않았습니다',
  312. noVarTip: '할당할 변수를 추가하세요',
  313. type: {
  314. string: '문자열',
  315. number: '숫자',
  316. object: '객체',
  317. array: '배열',
  318. },
  319. outputVars: {
  320. output: '할당된 변수의 값',
  321. },
  322. },
  323. tool: {
  324. toAuthorize: '승인하려면',
  325. inputVars: '입력 변수',
  326. outputVars: {
  327. text: '툴이 생성한 콘텐츠',
  328. files: {
  329. title: '툴이 생성한 파일',
  330. type: '지원 유형: 현재 이미지만 지원됩니다',
  331. transfer_method: '전송 방법: remote_url 또는 local_file 값',
  332. url: '이미지 URL',
  333. upload_file_id: '업로드 파일 ID',
  334. },
  335. },
  336. },
  337. questionClassifiers: {
  338. model: '모델',
  339. inputVars: '입력 변수',
  340. outputVars: {
  341. className: '클래스 이름',
  342. },
  343. class: '클래스',
  344. classNamePlaceholder: '클래스 이름을 입력하세요',
  345. advancedSetting: '고급 설정',
  346. topicName: '주제명',
  347. topicPlaceholder: '주제명을 입력하세요',
  348. addClass: '클래스 추가',
  349. instruction: '지시',
  350. instructionPlaceholder: '지시를 입력하세요',
  351. },
  352. },
  353. tracing: {
  354. stopBy: '{{user}}에 의해 중지됨',
  355. },
  356. }
  357. export default translation