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

# Olostep + Nanobot 統合

> Olostepをnanobotのweb_searchツールのウェブ検索バックエンドとして使用します。

Olostepはnanobotの`web_search`ツールに検索バックエンドを追加し、エージェントにAIに優しいウェブの回答とソースリンクを提供します。カスタムの検索パイプラインを構築する必要はありません。

## 特徴

<CardGroup cols={2}>
  <Card title="AI回答" icon="sparkles">
    簡潔な回答とサポートするソースリンクを返します。
  </Card>

  <Card title="簡単なセットアップ" icon="plug">
    単一の設定値とAPIキーでプロバイダーを有効にします。
  </Card>

  <Card title="オプション依存" icon="boxes-stacked">
    必要なときだけOlostepをインストールします。
  </Card>

  <Card title="プロキシサポート" icon="network-wired">
    必要に応じて`tools.web.proxy`を通してリクエストをルートします。
  </Card>

  <Card title="安全なフォールバック" icon="shield-halved">
    Olostepキーが利用できない場合はDuckDuckGoにフォールバックします。
  </Card>

  <Card title="標準化された出力" icon="list">
    他のプロバイダーと同じウェブ検索出力フォーマットを使用します。
  </Card>
</CardGroup>

## インストール

<CodeGroup>
  ```bash pip theme={null}
  pip install "nanobot-ai[olostep]"
  ```

  ```bash poetry theme={null}
  poetry add "nanobot-ai[olostep]"
  ```
</CodeGroup>

<Note>
  依存関係を手動で管理する場合、基盤となるパッケージは`olostep>=0.1.0`です。
</Note>

## セットアップ

APIキーを環境変数またはnanobotの設定で設定します。

### 環境変数

```bash theme={null}
export OLOSTEP_API_KEY="your-api-key"
```

### 設定ファイル

`~/.nanobot/config.json`に以下を追加します：

```json theme={null}
{
  "tools": {
    "web": {
      "search": {
        "provider": "olostep",
        "apiKey": "YOUR_OLOSTEP_API_KEY"
      }
    }
  }
}
```

### オプションのプロキシ

環境がプロキシを必要とする場合、`tools.web.proxy`の下で一度設定します：

```json theme={null}
{
  "tools": {
    "web": {
      "proxy": "http://127.0.0.1:7890"
    }
  }
}
```

## 利用可能なツール / メソッド

### `web_search`

`tools.web.search.provider`を`olostep`に設定してOlostepを使用します。

#### パラメータ

<ParamField path="provider" type="string">
  この統合を有効にするには`olostep`に設定します。デフォルト: `duckduckgo`
</ParamField>

<ParamField path="apiKey" type="string">
  Olostep APIキー。`OLOSTEP_API_KEY`環境変数も使用できます。
</ParamField>

<ParamField path="baseUrl" type="string">
  Olostepでは使用されません。設定の一貫性のために保持されています。
</ParamField>

<ParamField path="maxResults" type="integer" default="5">
  検索ごとの結果、1–10の範囲。
</ParamField>

<ParamField path="timeout" type="integer" default="30">
  検索のタイムアウト（秒）。
</ParamField>

<ParamField path="proxy" type="string or null">
  `tools.web`の下で設定されたプロキシURL。
</ParamField>

<CodeGroup>
  ```json Basic Setup theme={null}
  {
    "tools": {
      "web": {
        "search": {
          "provider": "olostep",
          "apiKey": "YOUR_OLOSTEP_API_KEY"
        }
      }
    }
  }
  ```

  ```json With Environment Variable theme={null}
  {
    "tools": {
      "web": {
        "search": {
          "provider": "olostep"
        }
      }
    }
  }
  ```

  ```bash theme={null}
  export OLOSTEP_API_KEY="your-api-key"
  ```

  ```json With Proxy theme={null}
  {
    "tools": {
      "web": {
        "proxy": "http://127.0.0.1:7890",
        "search": {
          "provider": "olostep",
          "apiKey": "YOUR_OLOSTEP_API_KEY"
        }
      }
    }
  }
  ```
</CodeGroup>

## 完全なエージェントの例

### 例 1: クイックリサーチアシスタント

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config()
    result = await bot.run(
        "Use web search to summarize the latest Olostep SDK capabilities and cite sources.",
        session_key="olostep-research",
    )
    print(result.content)


asyncio.run(main())
```

### 例 2: ワークスペースでのリサーチワークフロー

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config(workspace="/home/user/projects/research")
    result = await bot.run(
        "Find recent documentation for programmatic web access tools and list the key tradeoffs.",
        session_key="olostep-workspace-demo",
    )
    print(result.content)


asyncio.run(main())
```

### 例 3: プロキシ対応の検索セットアップ

```python theme={null}
import asyncio

from nanobot import Nanobot


async def main() -> None:
    bot = Nanobot.from_config(workspace="/home/user/projects/research")
    result = await bot.run(
        "Search for implementation notes about web-scraping SDKs and summarize the differences.",
        session_key="olostep-proxy-demo",
    )
    print(result.content)


asyncio.run(main())
```

## 設定 / オプション

* 統合を有効にするには`tools.web.search.provider`を`olostep`に設定します。
* `web_search`と`web_fetch`の両方を使用したい場合は`tools.web.enable`を`true`のままにします。
* すべての組み込みウェブツールを無効にするには`tools.web.enable`を`false`に設定します。
* 環境がプロキシを必要とする場合、`tools.web.proxy`を設定します。
* デフォルトのDuckDuckGoフォールバック動作を望む場合は`provider`を設定しないでください。

### フォールバック動作

Olostepが選択されているがAPIキーが利用できない場合、nanobotは失敗する代わりにDuckDuckGoにフォールバックします。

## 特殊機能

* **ソース対応の回答** — Olostepは回答とソースリンクを返します。
* **共通フォーマット** — 結果は他のプロバイダーと同じ標準化された検索出力でレンダリングされます。
* **ハード依存なし** — プロバイダーは`try/except`ガードの後ろでインポートされるため、Olostepがインストールされていなくてもnanobotは動作します。
* **プロキシ対応のトランスポート** — `tools.web.proxy`は統合で使用される基盤となるHTTPクライアントに適用されます。

## 価格

Olostepの価格はOlostepによって直接管理され、時間とともに変更される可能性があります。現在のプラン、クォータ、使用コストについてはOlostepアカウントダッシュボードを確認してください。

## サポート

* **PyPI**: [pypi.org/project/olostep](https://pypi.org/project/olostep/)
* **ドキュメント**: [docs.olostep.com](https://docs.olostep.com)
* **ホームページ**: [olostep.com](https://www.olostep.com)
* **GitHubリポジトリ**: [github.com/olostep-api/olostep-py](https://github.com/olostep-api/olostep-py)
* **GitHubの問題**: [github.com/olostep-api/olostep-py/issues](https://github.com/olostep-api/olostep-py/issues)
* **メール**: [team@olostep.com](mailto:team@olostep.com)

## 関連リソース

<CardGroup cols={2}>
  <Card title="Answers API" icon="question" href="/features/answers/answers">
    この統合を支えるAnswersエンドポイントについて学ぶ
  </Card>

  <Card title="Python SDK" icon="python" href="/sdks/python">
    Olostep Python SDKを探る
  </Card>

  <Card title="検索結果" icon="magnifying-glass" href="/searches/searches">
    ウェブ検索の機能を理解する
  </Card>

  <Card title="APIドキュメント" icon="book" href="/get-started/authentication">
    完全なAPIリファレンスを閲覧する
  </Card>
</CardGroup>
