AIパーソナル・ラーニング
と実践的なガイダンス
アリが描いたカエル

JavaScriptでOllama APIを使う

この記事では オーラマ API .このドキュメントは、開発者がすぐに使い始められ、Ollamaの機能を最大限に活用できるようにするためのものです。Node.js環境で使うことも、ブラウザで直接モジュールをインポートすることもできます。このドキュメントを学ぶことで、あなたのプロジェクトにOllamaを簡単に統合することができます。

 

Ollamaをインストールする

npm i ollama

 

使用方法

import ollama from 'ollama'
const response = await ollama.chat({
model: 'ollama3.1', message: [{ role: 'user', content: 'どうして空は青いの?
messages: [{ role: 'user', content: 'どうして空は青いの? }]
})
console.log(response.message.content)

ブラウザの使用

Node.jsなしでこのライブラリを使用するには、ブラウザ・モジュールをインポートする。

ollama/browser' から ollama をインポートする。

 

ストリーミング対応

これは stream: true レスポンス・ストリーミングを有効にして、関数呼び出しが 非同期ジェネレーター ここで、各部分はストリーム中のオブジェクトである。

import ollama from 'ollama'
const message = { role: 'user', content: 'どうして空は青いの? }
const response = await ollama.chat({ model: 'ollama3.1', messages: [message], stream: true })
for await (responseのconstの部分) { { プロセス.
process.stdout.write(part.message.content)
}

 

構造化出力

Ollama JavaScriptライブラリを使用することで、以下のようなアーキテクチャーを実現できる。 JSON オブジェクトが渡される。 フォーマット パラメータを使用すると、オプションで オブジェクト 形式を渡すか、Zod(推奨)を使って zodToJsonSchema() メソッドのシリアライゼーション・アーキテクチャ。

import ollama from 'ollama';
import { z } from 'zod';
import { zodToJsonSchema } from 'zod-to-json-schema';
const Country = z.object({
名前: z.string(), 首都: z.string(), {

languages: z.array(z.string())、
}); const response = await ollama.
const response = await ollama.chat({
model: 'ollama3.1', messages: [{ role: 'user', [z.string(), languages: z.array(z.string(), }); const response = await ollama.chat({
messages: [{ role: 'user', content: 'カナダについて教えてください。' }], format: zodToJson(z.string()), }.
format: zodToJsonSchema(Country), }); }.
}).
const country = Country.parse(JSON.parse(response.message.content)); console.log(country.log(response.message.content)); console.log(country.log(response.message.content))
console.log(country);

 

モデルの作成

ollama' から ollama をインポートする。
const modelfile = `
FROM llama3.1
SYSTEM "あなたはスーパーマリオブラザーズのマリオです。"
`
await ollama.create({ model: 'example', modelfile: modelfile })

 

API

Ollama JavaScript ライブラリ API は、Ollama REST API を中心に設計されています。基礎となる実装やAPIエンドポイントの全情報についてもっと知りたい場合は Ollama API ユーザーガイド

チャット

ollama.chat(request)
  • リクエスト <オブジェクト: チャットパラメータを含むリクエストオブジェクト。
    • モデル <文字列 チャットに使用するモデルの名前。
    • メッセージ <メッセージ: チャットの履歴を表すメッセージオブジェクトの配列。
      • 役割 <文字列メッセージ送信者の役割('user'、'system'、'assistant')。
      • 内容 <文字列メッセージの内容。
      • イメージ の場合Uint8Array または base64 エンコード文字列。
    • フォーマット <文字列(オプション) 期待されるレスポンスのフォーマットを設定する (json).
    • ストリーム <ブール値(オプション) true の場合 非同期ジェネレーター.
    • キープアライブ <文字列|数字(オプション) モデルのロード時間を保持します。
    • 用具 <ツール(オプション) モデルから呼び出される可能性のあるツールのリスト。
    • オプション <オプション(オプション) ランタイムオプションを設定する。
  • リターンズ <チャットレスポンス

生成

ollama.generate(request)
  • リクエスト <オブジェクト生成されたパラメータを含むリクエストオブジェクト。
    • モデル <文字列 チャットに使用するモデルの名前。
    • 迅速 <文字列モデルに送られるヒント。
    • 接尾辞 <文字列(オプション) サフィックスは、挿入されたテキストの後に続くテキストです。
    • システム <文字列(オプション) モデルシステムのプロンプトを上書きします。
    • テンプレート <文字列(オプション) モデルテンプレートを上書きします。
    •  <ブール値: (オプション)プロンプト・テンプレートをバイパスし、プロンプトをモデルに直接渡す。
    • イメージ の場合Uint8Array または base64 エンコード文字列。
    • フォーマット <文字列(オプション) 期待されるレスポンスのフォーマットを設定する (json).
    • ストリーム <ブール値(オプション) true の場合 非同期ジェネレーター.
    • キープアライブ <文字列|数字(オプション) モデルのロード時間を保持します。
    • オプション <オプション(オプション) ランタイムオプションを設定する。
  • リターンズ <ジェネレイトレスポンス

プルモデル

ollama.pull(request)
  • リクエスト <オブジェクトプルパラメータを含むリクエストオブジェクト。
    • モデル <文字列 引っ張るモデルの名前。
    • 危うい <ブール値(オプション) 認証できないサーバーからプルする。
    • ストリーム <ブール値(オプション) true の場合 非同期ジェネレーター.
  • リターンズ <プログレスレスポンス

プッシュモデル

ollama.push(request)
  • リクエスト <オブジェクトプッシュパラメータを含むリクエストオブジェクト。
    • モデル <文字列 プッシュするモデルの名前。
    • 危うい <ブール値オプション)ID を認証できないサーバーにプッシュする。
    • ストリーム <ブール値(オプション) true の場合 非同期ジェネレーター.
  • リターンズ <プログレスレスポンス

モデルの作成

ollama.create(request)
  • リクエスト <オブジェクト: パラメータが生成されたリクエストオブジェクトを含む。
    • モデル <文字列 作成するモデルの名前。
    • パス <文字列(オプション) 作成するモデル・ファイルへのパス。
    • モデルファイル <文字列(オプション) 作成するモデルファイルの内容。
    • ストリーム <ブール値(オプション) true の場合 非同期ジェネレーター.
  • リターンズ <プログレスレスポンス

モデルの削除

ollama.delete(request)
  • リクエスト <オブジェクト削除パラメータを含むリクエストオブジェクト。
    • モデル <文字列 削除するモデルの名前。
  • リターンズ <ステータス・レスポンス

レプリケーション・モデル

ollama.copy(request)
  • リクエスト <オブジェクトレプリケーションパラメータを含むリクエストオブジェクト。
    • ソース <文字列 コピー元のモデル名。
    • 目的地 <文字列 コピー先のモデル名。
  • リターンズ <ステータス・レスポンス

現地モデル一覧

ollama.list()
  • リターンズ <リスト・レスポンス

モデル情報の表示

ollama.show(request)
  • リクエスト <オブジェクト表示パラメータを含むリクエストオブジェクト。
    • モデル <文字列 表示するモデル名。
    • システム <文字列(オプション) モデル・システム・プロンプトの戻り値を上書きする。
    • テンプレート <文字列(オプション) モデルテンプレートの戻り値を上書きします。
    • オプション <オプション(オプション) ランタイムオプションを設定する。
  • リターンズ <ショーレスポンス

エンベッディングの生成

ollama.embed(request)
  • リクエスト <オブジェクト: 埋め込みパラメータを含むリクエストオブジェクト。
    • モデル <文字列 埋め込みを生成するために使用されるモデルの名前。
    • 入力 ||文字列埋め込みを生成するための入力。
    • 切り捨てる <ブール値(オプション) モデルがサポートするコンテキストの最大長に合わせて入力を切り詰める。
    • キープアライブ <文字列|数字(オプション) モデルのロード時間を保持します。
    • オプション <オプション(オプション) ランタイムオプションを設定する。
  • リターンズ <エンベッドレスポンス

コース

ollama.ps()
  • リターンズ <リスト・レスポンス

 

カスタム顧客

カスタムクライアントは、以下のフィールドを使用して作成できます:

  • ホスト <文字列(オプション) Ollamaホストアドレス。デフォルト。 "http://127.0.0.1:11434".
  • フェッチ <オブジェクト(オプション) Ollama ホストへのリクエストに使用するフェッチライブラリ。
import { Ollama } from 'ollama'
const ollama = new Ollama({ host: 'http://127.0.0.1:11434' })
const response = await ollama.chat({
model: 'ollama3.1', { messages: [{ role: 'user', 'user', 'user'] } }.
messages: [{ role: 'user', content: 'どうして空は青いの? }]
})

 

造る

プロジェクト・ファイルをビルドするには、以下を実行する:

npm run build

 


 

ドキュメントを参照してください:OLLAMA-JS

シーディーエヌワン
無断転載を禁じます:チーフAIシェアリングサークル " JavaScriptでOllama APIを使う

チーフAIシェアリングサークル

チーフAIシェアリングサークルは、AI学習に焦点を当て、包括的なAI学習コンテンツ、AIツール、実践指導を提供しています。私たちの目標は、高品質のコンテンツと実践的な経験の共有を通じて、ユーザーがAI技術を習得し、AIの無限の可能性を一緒に探求することです。AI初心者でも上級者でも、知識を得てスキルを向上させ、イノベーションを実現するための理想的な場所です。

お問い合わせ
ja日本語