wwf
2025-05-20 938c3e5a587ce950a94964ea509b9e7f8834dfae
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
const translation = {
  pageTitle: {
    line1: '프롬프트',
    line2: '엔지니어링',
  },
  orchestrate: '오케스트레이션',
  promptMode: {
    simple: '전문가 모드로 전환하여 전체 프롬프트를 편집합니다',
    advanced: '전문가 모드',
    switchBack: '기본 모드로 전환',
    advancedWarning: {
      title: '전문가 모드로 전환되었습니다. 프롬프트를 변경하면 기본 모드로 돌아갈 수 없습니다.',
      description: '전문가 모드에서는 전체 프롬프트를 편집할 수 있습니다.',
      learnMore: '자세히 알아보기',
      ok: '확인',
    },
    operation: {
      addMessage: '메시지 추가',
    },
    contextMissing: '컨텍스트 컴포넌트를 찾을 수 없습니다. 프롬프트의 효과가 충분하지 않을 수 있습니다.',
  },
  operation: {
    applyConfig: '배포',
    resetConfig: '재설정',
    debugConfig: '디버그',
    addFeature: '기능 추가',
    automatic: '자동',
    stopResponding: '응답 중지',
    agree: '좋아요',
    disagree: '싫어요',
    cancelAgree: '좋아요 취소',
    cancelDisagree: '싫어요 취소',
    userAction: '사용자',
  },
  notSetAPIKey: {
    title: 'LLM 제공자 키가 설정되지 않았습니다',
    trailFinished: '트라이얼 종료',
    description: 'LLM 제공자 키가 설정되지 않았습니다. 디버깅하기 전에 설정해야 합니다.',
    settingBtn: '설정으로 이동',
  },
  trailUseGPT4Info: {
    title: '현재 gpt-4는 지원되지 않습니다',
    description: 'gpt-4를 사용하려면 API 키를 설정해야 합니다.',
  },
  feature: {
    groupChat: {
      title: '채팅 기능 강화',
      description: '사전 대화 설정을 추가하면 사용자 경험이 향상됩니다.',
    },
    groupExperience: {
      title: '경험 강화',
    },
    conversationOpener: {
      title: '대화 시작',
      description: '채팅 앱에서 AI가 사용자에게 처음으로 적극적으로 말을 건다면 일반적으로 환영 메시지로 사용됩니다.',
    },
    suggestedQuestionsAfterAnswer: {
      title: '팔로우업',
      description: '다음 질문 제안을 설정하면 사용자에게 더 나은 채팅이 제공됩니다.',
      resDes: '사용자의 다음 질문에 대한 3가지 제안.',
      tryToAsk: '질문해보세요',
    },
    moreLikeThis: {
      title: '유사한 항목',
      description: '여러 텍스트를 한 번에 생성하고 편집하여 계속해서 생성합니다.',
      generateNumTip: '생성 횟수',
      tip: '이 기능을 사용하면 추가적인 토큰 오버헤드가 발생합니다',
    },
    speechToText: {
      title: '음성에서 텍스트로',
      description: '활성화하면 음성 입력을 사용할 수 있습니다.',
      resDes: '음성 입력이 활성화되어 있습니다',
    },
    textToSpeech: {
      title: '텍스트에서 음성으로',
      description: '활성화하면 텍스트를 음성으로 변환할 수 있습니다.',
      resDes: '텍스트에서 오디오로의 변환이 활성화되어 있습니다',
    },
    citation: {
      title: '인용 및 소유권',
      description: '활성화하면 생성된 콘텐츠의 소스 문서 및 소유권 섹션이 표시됩니다.',
      resDes: '인용 및 소유권이 활성화되어 있습니다',
    },
    annotation: {
      title: '주석 응답',
      description: '유사한 사용자 질문과 우선 일치를 위해 캐시에 고품질 응답을 수동으로 추가할 수 있습니다.',
      resDes: '주석 응답이 활성화되어 있습니다',
      scoreThreshold: {
        title: '점수 임계값',
        description: '주석 응답의 유사성 임계값을 설정하는 데 사용됩니다.',
        easyMatch: '간단한 일치',
        accurateMatch: '정확한 일치',
      },
      matchVariable: {
        title: '매치 변수',
        choosePlaceholder: '매치 변수 선택',
      },
      cacheManagement: '주석',
      cached: '주석이 있는',
      remove: '삭제',
      removeConfirm: '이 주석을 삭제하시겠습니까?',
      add: '주석 추가',
      edit: '주석 편집',
    },
    dataSet: {
      title: '컨텍스트',
      noData: '지식을 컨텍스트로 가져올 수 있습니다',
      words: '단어',
      textBlocks: '텍스트 블록',
      selectTitle: '참조할 지식 선택',
      selected: '선택한 지식',
      noDataSet: '지식이 없습니다',
      toCreate: '생성하기',
      notSupportSelectMulti: '현재 다중 선택은 지원되지 않습니다',
      queryVariable: {
        title: '쿼리 변수',
        tip: '이 변수는 컨텍스트 조회에 사용되는 쿼리 입력으로 사용되며, 이 변수 입력에 관련된 컨텍스트 정보를 가져옵니다.',
        choosePlaceholder: '쿼리 변수 선택',
        noVar: '변수 없음',
        noVarTip: '변수 섹션 하단에서 변수를 생성하십시오',
        unableToQueryDataSet: '지식을 쿼리할 수 없음',
        unableToQueryDataSetTip: '지식 쿼리에 실패했습니다. 정상적으로 쿼리할 수 없는 경우, 컨텍스트 섹션에서 컨텍스트 쿼리 변수를 다시 선택하십시오.',
        ok: '확인',
        contextVarNotEmpty: '컨텍스트 쿼리 변수를 비울 수 없습니다',
        deleteContextVarTitle: '변수 "{{varName}}"를 삭제하시겠습니까?',
        deleteContextVarTip: '이 변수는 컨텍스트 쿼리 변수로 설정되어 있어 삭제하면 지식의 정상적인 사용에 영향을 미칩니다. 삭제하려면 컨텍스트 섹션에서 다시 선택하십시오.',
      },
    },
    tools: {
      title: '도구',
      tips: '도구는 사용자 입력이나 변수를 요청 매개변수로 사용하여 외부 데이터를 컨텍스트로 쿼리하는 표준적인 API 호출 방법을 제공합니다.',
      toolsInUse: '{{count}}개의 도구가 사용 중',
      modal: {
        title: '도구',
        toolType: {
          title: '도구 유형',
          placeholder: '도구 유형 선택',
        },
        name: {
          title: '이름',
          placeholder: '이름 입력',
        },
        variableName: {
          title: '변수 이름',
          placeholder: '변수 이름 입력',
        },
      },
    },
    conversationHistory: {
      title: '대화 기록',
      description: '대화 역할에 접두사 이름을 설정합니다',
      tip: '대화 기록이 활성화되어 있지 않습니다. 위의 프롬프트에 <histories>를 추가하십시오.',
      learnMore: '자세히 알아보기',
      editModal: {
        title: '대화 역할 이름 편집',
        userPrefix: '사용자 접두사',
        assistantPrefix: '어시스턴트 접두사',
      },
    },
    toolbox: {
      title: '도구 상자',
    },
    moderation: {
      title: '콘텐츠 모더레이션',
      description: '모더레이션 API를 사용하거나 기밀 단어 목록을 유지함으로써 모델 출력을 안전하게 합니다.',
      allEnabled: '입력/출력 콘텐츠가 모두 활성화되어 있습니다',
      inputEnabled: '입력 콘텐츠가 활성화되어 있습니다',
      outputEnabled: '출력 콘텐츠가 활성화되어 있습니다',
      modal: {
        title: '콘텐츠 모더레이션 설정',
        provider: {
          title: '제공자',
          openai: 'OpenAI 모더레이션',
          openaiTip: {
            prefix: 'OpenAI 모더레이션에는',
            suffix: '에 OpenAI API 키가 설정되어 있어야 합니다.',
          },
          keywords: '키워드',
        },
        keywords: {
          tip: '한 줄에 하나씩, 줄 바꿈으로 입력하세요. 한 줄 당 최대 100자.',
          placeholder: '한 줄씩 입력하세요',
          line: '줄',
        },
        content: {
          input: '입력 콘텐츠 모더레이션',
          output: '출력 콘텐츠 모더레이션',
          preset: '프리셋 응답',
          placeholder: '프리셋 응답 내용을 입력하세요',
          condition: '최소한 하나의 입력 및 출력 콘텐츠를 모더레이션합니다',
          fromApi: '프리셋 응답은 API에서 반환됩니다',
          errorMessage: '프리셋 응답은 비워둘 수 없습니다',
          supportMarkdown: '마크다운이 지원됩니다',
        },
        openaiNotConfig: {
          before: 'OpenAI 모더레이션에는',
          after: '에 OpenAI API 키가 설정되어 있어야 합니다.',
        },
      },
    },
  },
  automatic: {
    title: '자동 어플리케이션 오케스트레이션',
    description: '시나리오를 설명하세요. Dify가 어플리케이션을 자동으로 오케스트레이션 합니다.',
    intendedAudience: '누가 대상이 되는지 설명하세요.',
    intendedAudiencePlaceHolder: '예: 학생',
    solveProblem: '어떤 문제를 AI가 해결할 것으로 예상하나요?',
    solveProblemPlaceHolder: '예: 학업 성적 평가',
    generate: '생성',
    audiencesRequired: '대상이 필요합니다',
    problemRequired: '문제가 필요합니다',
    resTitle: '다음 어플리케이션을 자동으로 오케스트레이션 했습니다.',
    apply: '이 오케스트레이션을 적용하기',
    noData: '왼쪽에 사용 예시를 기술하고, 오케스트레이션 미리보기가 여기에 나타납니다.',
    loading: '어플리케이션 오케스트레이션을 실행 중입니다...',
    overwriteTitle: '기존 구성을 덮어쓰시겠습니까?',
    overwriteMessage: '이 오케스트레이션을 적용하면 기존 구성이 덮어쓰여집니다.',
  },
  resetConfig: {
    title: '리셋을 확인하시겠습니까?',
    message: '변경 사항이 취소되고, 마지막으로 공개된 구성이 복원됩니다.',
  },
  errorMessage: {
    nameOfKeyRequired: '키 이름: {{key}} 이 필요합니다',
    valueOfVarRequired: '{{key}}의 값은 비워둘 수 없습니다',
    queryRequired: '요청 텍스트가 필요합니다.',
    waitForResponse: '이전 메시지에 대한 응답이 완료될 때까지 기다려 주세요.',
    waitForBatchResponse: '배치 작업에 대한 응답이 완료될 때까지 기다려 주세요.',
    notSelectModel: '모델을 선택해 주세요',
    waitForImgUpload: '이미지 업로드가 완료될 때까지 기다려 주세요',
  },
  chatSubTitle: '단계',
  completionSubTitle: '접두사 프롬프트',
  promptTip: '프롬프트는 AI의 응답을 지시하고 제한하여 유도합니다. {{input}}과 같은 변수를 삽입하세요. 이 프롬프트는 사용자에게 표시되지 않습니다.',
  formattingChangedTitle: '포맷이 변경되었습니다',
  formattingChangedText: '포맷을 변경하면 디버그 영역이 재설정됩니다. 계속하시겠습니까?',
  variableTitle: '변수',
  variableTip: '사용자는 양식에 변수를 입력하고, 프롬프트 내의 변수가 자동으로 대체됩니다.',
  notSetVar: '변수를 사용하면 사용자는 양식에 입력할 때 프롬프트의 단어나 시작 단어를 소개할 수 있습니다. "{{input}}"을 프롬프트 단어에 입력해 보세요.',
  autoAddVar: '프리프롬프트에서 참조되는 미정의 변수가 있습니다. 사용자 입력 양식에 추가하시겠습니까?',
  variableTable: {
    key: '변수 키',
    name: '사용자 입력 필드명',
    optional: '옵션',
    type: '입력 타입',
    action: '액션',
    typeString: '문자열',
    typeSelect: '선택',
  },
  varKeyError: {
    canNoBeEmpty: '{{key}}가 필요합니다',
    tooLong: '{{key}}가 너무 깁니다. 30자를 넘을 수 없습니다',
    notValid: '{{key}}가 유효하지 않습니다. 문자, 숫자, 밑줄만 포함할 수 있습니다',
    notStartWithNumber: '{{key}}는 숫자로 시작할 수 없습니다',
    keyAlreadyExists: '{{key}}는 이미 존재합니다',
  },
  otherError: {
    promptNoBeEmpty: '프롬프트를 비울 수 없습니다',
    historyNoBeEmpty: '프롬프트에 대화 기록을 설정해야 합니다',
    queryNoBeEmpty: '프롬프트에 쿼리를 설정해야 합니다',
  },
  variableConfig: {
    'addModalTitle': '입력 필드 추가',
    'editModalTitle': '입력 필드 편집',
    'description': '{{varName}} 변수 설정',
    'fieldType': '필드 타입',
    'string': '짧은 텍스트',
    'text-input': '짧은 텍스트',
    'paragraph': '문단',
    'select': '선택',
    'number': '숫자',
    'notSet': '설정되지 않음. 프롬프트의 프리픽스에 {{input}}을 입력해 보세요.',
    'stringTitle': '폼 텍스트 상자 옵션',
    'maxLength': '최대 길이',
    'options': '옵션',
    'addOption': '옵션 추가',
    'apiBasedVar': 'API 기반 변수',
    'varName': '변수명',
    'labelName': '레이블명',
    'inputPlaceholder': '입력하세요',
    'required': '필수',
    'errorMsg': {
      varNameRequired: '변수명은 필수입니다',
      labelNameRequired: '레이블명은 필수입니다',
      varNameCanBeRepeat: '변수명은 중복될 수 없습니다',
      atLeastOneOption: '적어도 하나의 옵션이 필요합니다',
      optionRepeat: '옵션이 중복되어 있습니다',
    },
  },
  vision: {
    name: '비전',
    description: '비전을 활성화하면 모델이 이미지를 받아와 관련 질문에 답변할 수 있습니다.',
    settings: '설정',
    visionSettings: {
      title: '비전 설정',
      resolution: '해상도',
      resolutionTooltip: `저해상도는 모델에게 512 x 512 해상도의 저해상도 이미지를 제공하여 65 토큰의 예산으로 이미지를 표현합니다. 이로 인해 API는 더 빠른 응답을 제공하며 높은 세부 정보가 필요한 경우 토큰 소모를 늘립니다.
      \n
      고해상도는 먼저 모델에게 저해상도 이미지를 보여주고, 그 후 입력 이미지 크기에 따라 512px의 정사각형 세부 사진을 만듭니다. 각 세부 사진에 대해 129 토큰의 예산을 사용합니다.`,
      high: '고',
      low: '저',
      uploadMethod: '업로드 방식',
      both: '모두',
      localUpload: '로컬 업로드',
      url: 'URL',
      uploadLimit: '업로드 제한',
    },
  },
  voice: {
    name: '음성',
    defaultDisplay: '기본 음성',
    description: '텍스트 읽기 음성 설정',
    settings: '설정',
    voiceSettings: {
      title: '음성 설정',
      language: '언어',
      resolutionTooltip: '텍스트 읽기 음성 언어를 지원합니다.',
      voice: '음성',
      autoPlay: '자동 재생',
      autoPlayEnabled: '켜다',
      autoPlayDisabled: '폐쇄',
    },
  },
  openingStatement: {
    title: '대화 시작',
    add: '추가',
    writeOpener: '오프너 작성',
    placeholder: '여기에 오프너 메시지를 작성하세요. 변수를 사용할 수 있습니다. {{variable}}를 입력해보세요.',
    openingQuestion: '시작 질문',
    noDataPlaceHolder: '사용자와의 대화를 시작하면 대화 애플리케이션에서 그들과 더 밀접한 관계를 구축하는 데 도움이 됩니다.',
    varTip: '변수를 사용할 수 있습니다. {{variable}}를 입력해보세요.',
    tooShort: '대화 시작에는 최소 20 단어의 초기 프롬프트가 필요합니다.',
    notIncludeKey: '초기 프롬프트에 변수 {{key}}가 포함되어 있지 않습니다. 초기 프롬프트에 추가하세요.',
  },
  modelConfig: {
    model: '모델',
    setTone: '응답 톤 설정',
    title: '모델 및 매개변수',
    modeType: {
      chat: '채팅',
      completion: '완성',
    },
  },
  inputs: {
    title: '디버그 및 미리보기',
    noPrompt: '프리프롬프트 입력란에 몇 가지 프롬프트를 작성해보세요.',
    userInputField: '사용자 입력 필드',
    noVar: '변수 값을 입력하세요. 새로운 세션이 시작될 때마다 프롬프트 단어가 자동으로 대체됩니다.',
    chatVarTip: '변수 값을 입력하세요. 새로운 세션이 시작될 때마다 프롬프트 단어가 자동으로 대체됩니다.',
    completionVarTip: '변수 값을 입력하세요. 질문이 전송될 때마다 프롬프트 단어가 자동으로 대체됩니다.',
    previewTitle: '프롬프트 미리보기',
    queryTitle: '쿼리 내용',
    queryPlaceholder: '요청 텍스트를 입력하세요.',
    run: '실행',
  },
  result: '출력 텍스트',
  datasetConfig: {
    settingTitle: '리트리벌 설정',
    knowledgeTip: '지식을 추가하려면 "+" 버튼을 클릭하세요.',
    retrieveOneWay: {
      title: 'N-to-1 리트리벌',
      description: '사용자 의도와 지식 설명을 기반으로, 에이전트가 자율적으로 최적의 지식을 선택합니다. 개별적이고 제한된 지식을 가진 애플리케이션에 적합합니다.',
    },
    retrieveMultiWay: {
      title: '멀티패스 리트리벌',
      description: '사용자 의도에 따라 모든 지식을 쿼리하고, 관련 텍스트를 여러 소스에서 가져와 다시 순위를 매긴 후 사용자 쿼리에 가장 적합한 결과를 선택합니다. 재순위 모델 API의 구성이 필요합니다.',
    },
    rerankModelRequired: '재순위 모델이 필요합니다',
    params: '매개변수',
    top_k: '상위 K',
    top_kTip: '사용자 질문에 가장 유사한 청크를 필터링하는 데 사용됩니다. 시스템은 선택한 모델의 max_tokens에 따라 동적으로 상위 K 값을 조정합니다.',
    score_threshold: '점수 임계값',
    score_thresholdTip: '청크 필터링의 유사성 임계값을 설정하는 데 사용됩니다.',
    retrieveChangeTip: '인덱스 모드 및 리트리벌 모드를 변경하면 이 지식과 관련된 애플리케이션에 영향을 줄 수 있습니다.',
  },
  debugAsSingleModel: '단일 모델로 디버그',
  debugAsMultipleModel: '다중 모델로 디버그',
  duplicateModel: '복제',
  publishAs: '로 게시',
  assistantType: {
    name: '어시스턴트 유형',
    chatAssistant: {
      name: '기본 어시스턴트',
      description: '대규모 언어 모델을 사용하여 채팅 기반의 어시스턴트를 구축합니다',
    },
    agentAssistant: {
      name: '에이전트 어시스턴트',
      description: '작업을 자율적으로 완료하기 위한 도구를 선택할 수 있는 인텔리전트 에이전트를 구축합니다',
    },
  },
  agent: {
    agentMode: '에이전트 모드',
    agentModeDes: '에이전트의 추론 모드 유형을 설정합니다',
    agentModeType: {
      ReACT: 'ReAct',
      functionCall: '함수 호출',
    },
    setting: {
      name: '에이전트 설정',
      description: '에이전트 어시스턴트 설정에서는 에이전트 모드나 빌트인 프롬프트 등 고급 기능을 설정할 수 있습니다. 에이전트 유형에서만 사용할 수 있습니다.',
      maximumIterations: {
        name: '최대 반복 횟수',
        description: '에이전트 어시스턴트가 실행할 수 있는 반복 횟수를 제한합니다',
      },
    },
    buildInPrompt: '빌트인 프롬프트',
    firstPrompt: '첫 번째 프롬프트',
    nextIteration: '다음 반복',
    promptPlaceholder: '여기에 프롬프트를 입력하세요',
    tools: {
      name: '도구',
      description: '도구를 사용하여 인터넷 검색이나 과학적 계산 등 LLM의 기능을 확장할 수 있습니다',
      enabled: '활성화됨',
    },
  },
}
 
export default translation