似たように、Pythonライブラリと同様に、JavaScript/TypeScriptにおいても実験管理をトラッキングするためのクライアントを提供しています。
- Nodeサーバーからメトリクスをログし、それをW&B上のインタラクティブなプロットで表示
- インタラクティブなトレースを用いてLLMアプリケーションのデバッグ
- LangChain.js の使用デバッグ
このライブラリはNodeおよびモダンなJSランタイムに対応しています。
JavaScriptクライアントのソースコードはGithubリポジトリで見つけることができます。
インストール
npm install @wandb/sdk
# あるいは ...
yarn add @wandb/sdk
### 使用法
TypeScript/ESM:
import wandb from '@wandb/sdk'
async function track() {
await wandb.init({config: {test: 1}});
wandb.log({acc: 0.9, loss: 0.1});
wandb.log({acc: 0.91, loss: 0.09});
await wandb.finish();
}
await track()
await wandb.finish()
を呼ばないとスクリプトが停止します。Node/CommonJS:
const wandb = require('@wandb/sdk').default;
現在、Python SDKで見つかる多くの機能が不足していますが、基本的なログ機能は利用可能です。Tablesなど、追加の機能をすぐに追加予定です。
認証と設定
Node環境ではprocess.env.WANDB_API_KEY
を探し、TTYがある場合は入力を促します。非Node環境ではsessionStorage.getItem("WANDB_API_KEY")
を探します。追加の設定はこちらで確認できます。
インテグレーション
私たちのPythonインテグレーションはコミュニティで広く利用されており、より多くのJavaScriptインテグレーションを構築し、LLMアプリビルダーが任意のツールを活用できるようにすることを希望しています。
もし追加のインテグレーションのリクエストがあれば、リクエストの詳細と共にissueを開くことをお勧めします。
## LangChain.js
このライブラリは、LLMアプリケーションを構築するための人気のライブラリであるLangChain.js バージョン >= 0.0.75 に統合されています。
### 使用法
import {WandbTracer} from '@wandb/sdk/integrations/langchain';
const wbTracer = await WandbTracer.init({project: 'langchain-test'});
// Langchainのワークロードを実行...
chain.call({input: "My prompt"}, wbTracer)
await WandbTracer.finish();
await WandbTracer.finish()
を呼ばないとスクリプトが停止します。より詳細な例についてはこちらのテストをご覧ください。