> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jinba.io/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenAI

> OpenAIモデルからの応答を呼び出す

## 概要

OpenAIツールを使用すると、GPT-3.5やGPT-4を含むOpenAIの言語モデルと対話できます。これらのツールは、シンプルなテキスト生成とJSONスキーマを使用した構造化出力の両方をサポートしています。

## 主な機能

* `OPENAI_INVOKE`
  * テキスト生成のためにOpenAIモデルにプロンプトを送信
  * JSONスキーマを使用した構造化出力のサポート
* `OPENAI_INVOKE_WITH_FILE`
  * ファイルベースの分析のためにプロンプトと一緒にファイルを送信

## 認証

詳細については[こちらをクリック](/ja/pages/credentials/openai)してください。

APIキーをお持ちでない場合でも、JinbaのAPIクレジットを使用してOpenAIツールを実行できます。独自のAPIキーを使用したい場合は、[OpenAI APIウェブサイト](https://platform.openai.com/api-keys)から取得できます。

**注意**: APIキーは機密情報として扱い、パブリックリポジトリにコミットしないでください。

### 例: 基本的なテキスト生成

```yaml theme={null}
- id: generate_summary
  name: generate_summary
  tool: OPENAI_INVOKE
  config:
    - name: version
      value: gpt-4
    - name: temperature
      value: 0.7
  input:
    - name: prompt
      value: |
        以下のテキストを3つの要点で要約してください：
        
        {{steps.previous_step.result.content}}
```

### 例: JSONスキーマを使用した構造化出力

```yaml theme={null}
- id: extract_entities
  name: extract_entities
  tool: OPENAI_INVOKE
  config:
    - name: version
      value: gpt-4
    - name: temperature
      value: 0.1
  input:
    - name: prompt
      value: |
        テキストから以下の情報を抽出してください：
        - 人名
        - 組織名
        - 場所
        - 日付
        
        テキスト: {{steps.input.result.content}}
    - name: json_schema
      value: |
        {
          "type": "object",
          "properties": {
            "entities": {
              "type": "object",
              "properties": {
                "people": {
                  "type": "array",
                  "items": {"type": "string"}
                },
                "organizations": {
                  "type": "array",
                  "items": {"type": "string"}
                },
                "locations": {
                  "type": "array",
                  "items": {"type": "string"}
                },
                "dates": {
                  "type": "array",
                  "items": {"type": "string"}
                }
              }
            }
          }
        }
```

### 例: ファイル分析

```yaml theme={null}
- id: analyze_document
  name: analyze_document
  tool: OPENAI_INVOKE_WITH_FILE
  config:
    - name: version
      value: gpt-4
  input:
    - name: prompt
      value: |
        この文書を分析して以下を提供してください：
        1. 簡潔な要約
        2. 議論された主要なトピック
        3. アクションアイテムや推奨事項
    - name: file_url
      value: "{{steps.upload_file.result.url}}"
```
