Lina:ローカライゼーションエンジニア

役割

Lina:ローカライゼーションエンジニア はこの NocoBase 組み込みシナリオに特化し、関連タスクを効率的に完了できるよう支援します。

ヒント

Lina はローカライゼーション専用で、一般的な Skills や Tools は使用しません。

シナリオ

  • システムとプラグインのエントリーを一括翻訳します。
  • コレクション、フィールド、メニューのローカライゼーション内容を翻訳します。
  • テーブルで選択したエントリーのみ翻訳します。

前提条件

Lina を使用する前に、次の設定を完了してください。

  • ローカライゼーション管理 プラグインを有効化します。
  • 利用可能な LLM サービスを設定し、Lina にデフォルトモデルを割り当てます。参照: AI 従業員モデルの設定 および モデル選択の推奨.
  • システム設定で対象言語を有効化します。
  • ローカライゼーション管理ページで翻訳対象のエントリーを同期します。
ヒント

Lina は現在のロケールに対して翻訳タスクを作成します。

プロンプト設定

システム設定 -> AI 従業員 -> AI employees から Lina の編集ダイアログを開き、Role setting でプロンプトを調整できます。プロンプトは通常、業務領域の情報、用語ルール、出力制約を定義するために使います。長すぎると、翻訳専用モデルに適さない場合があります。

デフォルトプロンプトの例:

# Role
You are Lina, a professional localization translator for NocoBase.

# Task
Translate NocoBase localization text into the requested target language.

# Translation requirements
1. Keep the translation faithful, concise, and natural for product UI.
2. Use consistent NocoBase and software terminology.
3. Preserve placeholders, variables, HTML tags, ICU syntax, line breaks, and code-like tokens.
4. Return only the translated text. Do not explain, quote, or use Markdown.
5. If the text should not be translated, return it unchanged.

参照翻訳と翻訳対象テキストを Lina のプロンプトに書く必要はありません。タスク作成時に、システムがエントリー内容、対象言語、確認ダイアログの参照言語設定に基づいて自動的に追加します。

使用方法

ローカライゼーション管理ページで Lina のアバターをクリックし、AI 翻訳タスクの範囲を選択します。

差分翻訳

現在の言語でまだ翻訳がないエントリーのみ翻訳します。

組み込みエントリーについては、対象言語のシステムまたはプラグイン言語パックに翻訳がすでに存在する場合、ローカライゼーション翻訳テーブルに対応するレコードがまだなくても翻訳済みとみなし、差分翻訳には含めません。

選択項目の翻訳

先にテーブルでエントリーを選択し、選択した内容のみ翻訳します。

エントリーが選択されていない場合、システムは選択を促します。

全量翻訳

現在の言語で対象となるすべてのエントリーを翻訳します。

注意

全量翻訳は既存の翻訳を上書きする可能性があります。開始前に対象言語、エントリー数、モデルサービスを確認してください。

タスク確認

タスク作成前に、システムは次の内容を含む確認ダイアログを表示します。

  • タスク説明。
  • 翻訳するエントリー数。
  • 使用するプロバイダー。
  • 使用するモデル。
  • 参照翻訳言語の設定。

全量翻訳と差分翻訳では、確認ダイアログで翻訳範囲も選択できます。

  • すべて: 現在のタスク条件に一致するすべてのエントリーを処理します。
  • 組み込みエントリー: システムとプラグインのエントリー。
  • カスタムエントリー: ルート名、コレクション名とフィールド名、UI コンテンツ。

選択項目の翻訳は、テーブルで選択済みのレコードのみを処理するため、翻訳範囲は表示されません。また、組み込みエントリーとカスタムエントリーを分けず、汎用の参照翻訳言語設定だけを表示します。

翻訳対象エントリー数が 0 の場合、システムはユーザーに通知し、バックグラウンドタスクを作成しません。確認後、システムはバックグラウンドタスクを作成します。進捗は非同期タスクで確認できます。完了後、翻訳は対応する言語に書き込まれます。

参照翻訳

フィールド名、ボタン、ステータスなどの短いエントリーでは、既存の参照翻訳を使って一貫性を高めます。

  • 組み込みエントリーは中国語翻訳をデフォルト参照、日本語をフォールバック参照として使用します。
  • カスタムエントリーはシステム既定言語をデフォルト参照、中国語をフォールバック参照として使用します。
  • ユーザーはタスク確認ダイアログでデフォルト言語とフォールバック言語を調整できます。
  • システムはまずデフォルト言語の参照翻訳を使用します。存在しない場合はフォールバック言語を試します。

参照がある場合、Lina は概ね次のようなプロンプトを使用します。

Refer to the following translation:
{source_term} is translated as {target_term}

Translate the following text into {target_language}. Output only the translated result without any additional explanation:

{source_text}

モデル選択の推奨

ローカライゼーション翻訳では多くのエントリーを処理します。可能であれば、オンラインモデルのレート、並行数、トークン制限を避けるため、ローカルにデプロイした翻訳専用小型モデルを優先してください。

ローカルデプロイができない場合も、一般チャットモデルではなく翻訳専用モデルを選択してください。翻訳モデルは通常、短いエントリー、UI テキスト、一括翻訳により適しています。Lina は従業員プロンプト、参照翻訳、翻訳対象テキストを組み合わせてモデルに送信します。ユーザーは Lina のプロンプトを調整して、翻訳スタイルとルールを制御できます。

モデル能力に応じて並行数を調整し、スループット、応答時間、コストを制御できます。

ローカルにデプロイした翻訳専用小型モデルの完全な実践は次を参照してください Lina とローカル HY-MT1.5-1.8B を使ってローカライゼーションエントリーを翻訳する.

ヒント

並行数は AI_LOCALIZATION_CONCURRENCY で制御します。既定値は 10、範囲は 1 から 20、範囲外は既定値を使用します。

進捗と失敗処理

Lina の翻訳タスクはバックグラウンド非同期タスクとして実行され、エントリーごとに結果を書き込みます。

エントリーが失敗した場合、エラーを記録してタスクを停止し、制御不能な結果の書き込みを防ぎます。

  • AI プラグインまたは Async Task Manager が有効化されていません。
  • Lina に利用可能なモデルが設定されていません。
  • モデルサービスが利用できないかタイムアウトしています。

非同期タスク詳細とサーバーログで、プロバイダー、モデル、対象言語、エントリー ID、所要時間を確認してください。

公開前の確認

AI 翻訳完了後、公開前に確認してください。

  • メニュー、ボタン、フィールド名などの短いエントリーが製品文脈に合っていること。
  • 変数、プレースホルダー、HTML タグが保持されていること。
  • 業務用語に一貫性があること。
  • 確認後に公開します。