注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

Functions 内の言語モデル

Palantir は、Functions 内で使用できる一連の言語モデルを提供しています。 Palantir が提供する LLM について詳しく読む

前提条件

Palantir が提供する言語モデルを使用するには、まず ユーザーのエンロールメントで AIP を有効化する必要があります。また、AIP の開発者機能 を使用するための権限も必要です。

言語モデルのインポート

言語モデルの使用を開始するには、以下の手順に従って、特定のモデルを Functions を書いているリポジトリにインポートする必要があります:

  1. すでにインポートされたモデルをすべて見るために、Model Imports のサイドパネルをナビゲートして開きます。
Model import sidebar.
  1. 新しい言語モデルをインポートするには、Model Imports パネルの右上にある + を選択します。これにより、新しいウィンドウが開き、そこでユーザーが使用できる Palantir が提供するモデルが表示されます。
Model import dialog showing a few Palantir-provided LLMs.
  1. Modeling Objectives アプリを通じて以前に作成されたカスタムモデルを表示できるタブもあります。これらのモデルの使用方法についての詳細は、Functions on models のドキュメンテーションにあります。

  2. インポートしたいモデルを選択し、Save をクリックしてこれらのモデルをリポジトリにインポートします。Code Assist は自動的に更新して、これらのモデルと対話するためのコードバインディングを生成します。

  3. 言語モデルをインポートした後、以下のインポートステートメントを追加して、リポジトリでそれらを使用できるようになります。ここで、GPT_4 をリポジトリにインポートした言語モデルの名前に置き換えます:

Copied!
1 2 // "@foundry/models-api/language-models"からGPT_4をインポートします import { GPT_4 } from "@foundry/models-api/language-models"

言語モデルを使用するFunctionの作成

この段階では、インポートした言語モデルを使用するFunctionを作成することができます。この例では、上記のようにGPT_4をインポートしたと仮定します。

まず、以下のインポート文をファイルに追加します:

Copied!
1 2 // @foundry/models-api/language-models から GPT_4 をインポートします import { GPT_4 } from "@foundry/models-api/language-models"

各言語モデルには、強く型付けされた入力と出力を持つ生成メソッドが利用可能です。例えば、GPT_4 モデルは createChatCompletion メソッドを提供し、ユーザーが一連のメッセージと、モデルの振る舞いを変更する追加のパラメーター(例えば、温度やトークンの最大数)を渡すことを可能にします。

以下の例示的な例では、提供された GPT_4 モデルを使用して、ユーザーが提供したテキストの簡単な感情分析を実行します。この関数は、テキストを "Good"、"Bad"、または "Uncertain" と分類します。

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 @Function() public async sentimentAnalysis(userPrompt: string): Promise<string> { // システムプロンプト:ユーザーが提供したテキストの感情を推定してください。 // 良い、悪い、または不確かのいずれかで返答してください。 // テキストが明確に良いか悪い場合にのみ、「良い」または「悪い」を選択してください。 // テキストが中立であるか、判断できない場合は、「不確か」を選択してください。 const systemPrompt = "Provide an estimation of the sentiment the text the user has provided. \ You may respond with either Good, Bad, or Uncertain. Only choose Good or Bad if you are overwhelmingly \ sure that the text is either good or bad. If the text is neutral, or you are unable to determine, choose Uncertain." const systemMessage = { role: "SYSTEM", content: systemPrompt }; const userMessage = { role: "USER", content: userPrompt }; // GPT-4 にチャットの補完を作成させます const gptResponse = await GPT_4.createChatCompletion({messages: [systemMessage, userMessage], params: { temperature: 0.7 } }); // GPT-4 の応答からメッセージの内容を返すか、不確かを返す return gptResponse.choices[0].message.content ?? "Uncertain"; }

この関数は、プラットフォーム全体で使用できます。

埋め込み

生成的な言語モデルとともに、Palantirは埋め込みを生成するために使用できるモデルも提供します。簡単な例は以下の通りです:

Copied!
1 2 3 4 5 6 7 8 @Function() // テキストの埋め込みを生成する非同期関数 public async generateEmbeddingsForText(inputs: string[]): Promise<Double[][]> { // TextEmbeddingAda_002を使用して埋め込みを作成 const response = await TextEmbeddingAda_002.createEmbeddings({ inputs }); // 埋め込みを返す return response.embeddings; }

これは主に、Semantic Search ワークフローを実行するために使用されます。

パフォーマンスに関する考慮事項

特定のモデルにはレート制限が適用されている場合があり、一定の時間内に渡すことができるトークンの数が制限されていることに注意してください。これは、Functionsに適用される標準的な制限とともに強制されます。


注: AIPの機能利用可能性は変更される可能性があり、顧客間で異なる場合があります。