API Overview
Source
class Agent
Pydantic フィールド:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonemodel_name:<class 'str'>temperature:<class 'float'>system_message:<class 'str'>tools:list[typing.Any]
method step
state: 環境の現在の状態。action: 実行するアクション。 戻り値: 環境の新しい状態。
Source
class AgentState
Pydantic フィールド:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonehistory:list[typing.Any]
Source
class AnnotationSpec
Pydantic フィールド:
name:str | Nonedescription:str | Nonefield_schema:dict[str, typing.Any]unique_among_creators:<class 'bool'>op_scope:list[str] | None
classmethod preprocess_field_schema
Source
classmethod validate_field_schema
Source
method value_is_valid
-
payload: スキーマに対して検証するデータ。 戻り値: -
bool: 検証が成功した場合は True、そうでない場合は False。
Source
class Audio
サポートされている形式(wav または mp3)のオーディオデータを表すクラス。
このクラスはオーディオデータの保存を処理し、異なるソースからの読み込みやファイルへのエクスポート用メソッドを提供します。
属性:
format: オーディオ形式(現在は ‘wav’ または ‘mp3’ をサポート)data: バイト列としての生のオーディオデータ
-
data: オーディオデータ(バイト列または base64 エンコードされた文字列) -
format: オーディオ形式(‘wav’ または ‘mp3’) -
validate_base64: 入力データに対して base64 デコードを試みるかどうか 例外: -
ValueError: オーディオデータが空、または形式がサポートされていない場合
method __init__
Source
method export
Source
classmethod from_data
-
path: オーディオファイルが書き込まれるパス 引数: -
data: バイト列または base64 エンコードされた文字列としてのオーディオデータ -
format: オーディオ形式(‘wav’ または ‘mp3’) 戻り値: -
Audio: 新しい Audio インスタンス
ValueError: 形式がサポートされていない場合
Source
classmethod from_path
-
path: オーディオファイルへのパス(拡張子が .wav または .mp3 である必要があります) 戻り値: -
Audio: ファイルから読み込まれた新しい Audio インスタンス
ValueError: ファイルが存在しないか、サポートされていない拡張子の場合
Source
class Content
さまざまなソースからのコンテンツを表現し、関連するメタデータと共に統一されたバイト指向の表現に解決するクラス。
このクラスは、以下のクラスメソッドのいずれかを使用してインスタンス化する必要があります:
- from_path()
- from_bytes()
- from_text()
- from_url()
- from_base64()
- from_data_url()
method __init__
Content.from_path() のようなクラスメソッドを使用してください。
Pydantic フィールド:
data:<class 'bytes'>size:<class 'int'>mimetype:<class 'str'>digest:<class 'str'>filename:<class 'str'>content_type:typing.Literal['bytes', 'text', 'base64', 'file', 'url', 'data_url', 'data_url:base64', 'data_url:encoding', 'data_url:encoding:base64']input_type:<class 'str'>encoding:<class 'str'>metadata:dict[str, typing.Any] | Noneextension:str | None
property art
property ref
Source
method as_string
encoding 属性を使用してデコードされます。base64 の場合、データは一度 base64 バイトに再エンコードされた後、ASCII 文字列にデコードされます。
戻り値:
str.
Source
classmethod from_base64
Source
classmethod from_bytes
Source
classmethod from_data_url
Source
classmethod from_path
Source
classmethod from_text
Source
classmethod from_url
Source
classmethod model_validate
Source
classmethod model_validate_json
Source
method open
bool: ファイルが正常に開かれた場合は True、そうでない場合は False。
Source
method save
Source
method serialize_data
Source
method to_data_url
-
dest: ファイルがコピーされる保存先パス(文字列または pathlib.Path)。保存先パスはファイルまたはディレクトリーのいずれかです。dest にファイル拡張子(例:.txt)がない場合、保存先はディレクトリーとみなされます。 引数: -
use_base64: True の場合、データは base64 エンコードされます。それ以外の場合は、パーセントエンコーディングされます。デフォルトは True です。 戻り値: データ URL 文字列。
Source
class Dataset
簡単な保存と自動バージョン管理を備えた Dataset オブジェクト。
例:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonerows:trace.table.Table | trace.vals.WeaveTable
method add_rows
rows: データセットに追加する行。 戻り値: 更新されたデータセット。
Source
classmethod convert_to_table
Source
classmethod from_calls
Source
classmethod from_hf
Source
classmethod from_obj
Source
classmethod from_pandas
Source
method select
indices: 選択する行を指定する整数インデックスのイテラブル。 戻り値: 選択された行のみを含む新しい Dataset オブジェクト。
Source
method to_hf
Source
method to_pandas
Source
class EasyPrompt
Source
method __init__
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonedata:<class 'list'>config:<class 'dict'>requirements:<class 'dict'>
property as_str
すべてのメッセージを単一の文字列に結合します。property is_bound
property messages
property placeholders
property system_message
すべてのメッセージをシステムプロンプトメッセージに結合します。property system_prompt
すべてのメッセージをシステムプロンプトオブジェクトに結合します。property unbound_placeholders
Source
method append
Source
method as_dict
Source
method as_pydantic_dict
Source
method bind
Source
method bind_rows
Source
method config_table
Source
method configure
Source
method dump
Source
method dump_file
Source
method format
Source
classmethod from_obj
Source
classmethod load
Source
classmethod load_file
Source
method messages_table
Source
method print
Source
method publish
Source
method require
Source
method run
Source
method validate_requirement
Source
method validate_requirements
Source
method values_table
Source
class Evaluation
一連のスコアラーとデータセットを含む評価をセットアップします。
evaluation.evaluate(model) を呼び出すと、データセットの列名と model.predict の引数名を一致させて、データセットの行をモデルに渡します。
その後、すべてのスコアラーを呼び出し、結果を weave に保存します。
データセットの行を前処理したい場合は、preprocess_model_input に関数を渡すことができます。
例:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonedataset:<class 'dataset.dataset.Dataset'>scorers:list[typing.Annotated[trace.op_protocol.Op | flow.scorer.Scorer, BeforeValidator(func=<function cast_to_scorer at 0x7fd95dcf47c0>, json_schema_input_type=PydanticUndefined)]] | Nonepreprocess_model_input:collections.abc.Callable[[dict], dict] | Nonetrials:<class 'int'>metadata:dict[str, typing.Any] | Noneevaluation_name:str | collections.abc.Callable[trace.call.Call, str] | None
method evaluate
Source
classmethod from_obj
Source
method get_eval_results
Source
method get_evaluate_calls
CallsIter: 評価の run を表す Call オブジェクトのイテレーター。
ValueError: 評価に ref がない場合(まだ保存/実行されていない場合)。
Source
method get_score_calls
dict[str, list[Call]]: トレース ID をスコアラー Call オブジェクトのリストにマッピングする辞書。各トレース ID は 1 回の評価 run を表し、リストにはその run 中に実行されたすべてのスコアラーコールが含まれます。
Source
method get_scores
dict[str, dict[str, list[Any]]]: 以下の構造を持つネストされた辞書:- 第 1 レベルのキー:トレース ID(評価 run)
- 第 2 レベルのキー:スコアラー名
- 値:その run とスコアラーに対するスコアラー出力のリスト
Source
method model_post_init
Source
method predict_and_score
Source
method summarize
Source
class EvaluationLogger
このクラスは、評価をログに記録するための命令的なインターフェースを提供します。
log_prediction メソッドを使用して最初の予測がログに記録されると、評価が自動的に開始され、log_summary メソッドが呼び出されると終了します。
予測をログに記録するたびに、ScoreLogger オブジェクトが返されます。このオブジェクトを使用して、その特定の予測に対するスコアとメタデータをログに記録できます。詳細については、ScoreLogger クラスを参照してください。
基本的な使用法 - 入力と出力を直接指定して予測をログに記録する:
method __init__
property attributes
property ui_url
Source
method fail
Source
method finish
Source
method log_example
inputs: 予測の入力データ。output: 出力値。scores: スコアラー名をスコア値にマッピングする辞書。 例:
Source
method log_prediction
inputs: 予測のための入力データ。output: 出力値。デフォルトは None です。後で pred.output を使用して設定できます。 戻り値: スコアをログに記録し、オプションで予測を完了させるための ScoreLogger。
pred = ev.log_prediction({'q': ’…’}, output=“answer”) pred.log_score(“correctness”, 0.9) pred.finish()
with ev.log_prediction({'q': ’…’}) as pred: response = model(…) pred.output = response pred.log_score(“correctness”, 0.9) # 終了時に自動的に finish() を呼び出します
Source
method log_summary
Source
method set_view
weave.views 下にビューをアタッチします。
提供されたコンテンツをプロジェクト内のオブジェクトとして保存し、評価の evaluate コールの summary.weave.views.<name> 下にその参照 URI を書き込みます。文字列入力は、提供された拡張子または mimetype を使用して Content.from_text でテキストコンテンツとしてラップされます。
引数:
name: 表示されるビュー名。summary.weave.views下のキーとして使用されます。content: シリアライズするweave.Contentインスタンスまたは文字列。extension: 文字列コンテンツ入力に対するオプションのファイル拡張子。mimetype: 文字列コンテンツ入力に対するオプションの MIME タイプ。metadata: 新しく作成されたContentにアタッチされるオプションのメタデータ。encoding: 文字列コンテンツ入力に対するテキストエンコーディング。 戻り値: None
import weave
ev = weave.EvaluationLogger() ev.set_view(“report”, ”# Report”, extension=“md”)
Source
class File
パス、mimetype、およびサイズ情報を持つファイルを表すクラス。
Source
method __init__
property filename
ファイルのファイル名を取得します。-
path: ファイルへのパス(文字列または pathlib.Path) -
mimetype: ファイルのオプションの MIME タイプ - 指定されない場合は拡張子から推論されます 戻り値: -
str: ディレクトリーパスを含まないファイル名。
Source
method open
bool: ファイルが正常に開かれた場合は True、そうでない場合は False。
Source
method save
Source
class Markdown
Markdown レンダリング可能オブジェクト。
-
dest: ファイルがコピーされる保存先パス(文字列または pathlib.Path)。保存先パスはファイルまたはディレクトリーのいずれかです。 引数: -
markup(str): Markdown を含む文字列。 -
code_theme(str, optional): コードブロック用の Pygments テーマ。デフォルトは “monokai”。コードテーマについては https://pygments.org/styles/ を参照してください。 -
justify(JustifyMethod, optional): 段落の配置(ジャスティファイ)方法。デフォルトは None。 -
style(Union[str, Style], optional): Markdown に適用するオプションのスタイル。 -
hyperlinks(bool, optional): ハイパーリンクを有効にします。デフォルトはTrue。
method __init__
Source
class MessagesPrompt
Source
method __init__
-
inline_code_lexer: (str, optional): インラインコードのハイライトが有効な場合に使用するレクサー。デフォルトは None です。 -
inline_code_theme: (Optional[str], optional): インラインコードのハイライト用の Pygments テーマ、またはハイライトなしの場合は None。デフォルトは None です。 Pydantic フィールド: -
name:str | None -
description:str | None -
ref:trace.refs.ObjectRef | None -
messages:list[dict]
method format
Source
method format_message
Source
classmethod from_obj
Source
class Model
入力に対して動作するコードとデータの組み合わせをキャプチャすることを目的としています。例えば、プロンプトを使用して LLM を呼び出し、予測を行ったりテキストを生成したりすることが考えられます。
モデルを定義する属性やコードを変更すると、それらの変更がログに記録され、バージョンが更新されます。これにより、モデルの異なるバージョン間で予測結果を比較できるようになります。これを使用して、プロンプトの調整を繰り返したり、最新の LLM を試して異なる設定間で予測結果を比較したりしてください。
例:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | None
method get_infer_method
Source
class Monitor
受信したコールを自動的にスコアリングするためのモニターをセットアップします。
例:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonesampling_rate:<class 'float'>scorers:list[flow.scorer.Scorer]op_names:list[str]query:trace_server.interface.query.Query | Noneactive:<class 'bool'>
method activate
Source
method deactivate
Source
classmethod from_obj
Source
class Object
追跡およびバージョン管理が可能な Weave オブジェクトのベースクラス。
このクラスは Pydantic の BaseModel を拡張し、オブジェクトの追跡、参照、およびシリアライズのための Weave 固有の機能を提供します。オブジェクトは名前、説明、および参照を持つことができ、これらによって Weave システムに保存および取得できます。
属性:
name(Optional[str]): オブジェクトの人間が読みやすい名前。description(Optional[str]): オブジェクトが何を表すかの説明。ref(Optional[ObjectRef]): Weave システム内のオブジェクトへの参照。
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | None
classmethod from_uri
uri(str): オブジェクトを指す Weave URI。objectify(bool): 結果をオブジェクト化するかどうか。デフォルトは True。
Self: URI から作成されたクラスのインスタンス。
NotImplementedError: クラスがデシリアライズに必要なメソッドを実装していない場合。
Source
classmethod handle_relocatable_object
v(Any): 検証する値。handler(ValidatorFunctionWrapHandler): 標準的な Pydantic 検証ハンドラー。info(ValidationInfo): 検証コンテキスト情報。
Any: 検証されたオブジェクトインスタンス。
ObjectRef が渡されたとき
obj = MyObject(some_object_ref)WeaveObject が渡されたとき
obj = MyObject(some_weave_object)property digest
property extra
Source
method as_param_dict
Source
method delete
Source
method get
Source
method is_descended_from
Source
method maybe_parse_uri
Source
method parse_uri
Source
method uri
Source
method with_attr
Source
method with_extra
Source
method with_index
Source
method with_item
Source
method with_key
Source
class EasyPrompt
Source
method __init__
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonedata:<class 'list'>config:<class 'dict'>requirements:<class 'dict'>
property as_str
すべてのメッセージを単一の文字列に結合します。property is_bound
property messages
property placeholders
property system_message
すべてのメッセージをシステムプロンプトメッセージに結合します。property system_prompt
すべてのメッセージをシステムプロンプトオブジェクトに結合します。property unbound_placeholders
Source
method append
Source
method as_dict
Source
method as_pydantic_dict
Source
method bind
Source
method bind_rows
Source
method config_table
Source
method configure
Source
method dump
Source
method dump_file
Source
method format
Source
classmethod from_obj
Source
classmethod load
Source
classmethod load_file
Source
method messages_table
Source
method print
Source
method publish
Source
method require
Source
method run
Source
method validate_requirement
Source
method validate_requirements
Source
method values_table
Source
class Prompt
Pydantic フィールド:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | None
method format
Source
class SavedView
SavedView オブジェクトを操作するためのフルーエントスタイルのクラス。
Source
method __init__
property entity
property label
property project
property view_type
Source
method add_column
Source
method add_columns
Source
method add_filter
Source
method add_sort
Source
method column_index
Source
method filter_op
Source
method get_calls
Source
method get_known_columns
Source
method get_table_columns
Source
method hide_column
Source
method insert_column
Source
classmethod load
Source
method page_size
Source
method pin_column_left
Source
method pin_column_right
Source
method remove_column
Source
method remove_columns
Source
method remove_filter
Source
method remove_filters
Source
method rename
Source
method rename_column
Source
method save
Source
method set_columns
Source
method show_column
Source
method sort_by
Source
method to_grid
Source
method to_rich_table_str
Source
method ui_url
Source
method unpin_column
Source
class Scorer
Pydantic フィールド:
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonecolumn_map:dict[str, str] | None
classmethod from_obj
Source
method model_post_init
Source
method score
Source
method summarize
Source
class StringPrompt
Source
method __init__
name:str | Nonedescription:str | Noneref:trace.refs.ObjectRef | Nonecontent:<class 'str'>
method format
Source
classmethod from_obj
Source
class Table
Source
method __init__
property rows
Source
method append
Source
method pop
Source
class ContextAwareThread
呼び出し元のコンテキストで関数を実行するスレッド。
これは threading.Thread のドロップインリプレースメントであり、スレッド内での呼び出しが期待通りに動作することを保証します。Weave は特定の contextvars が設定されている必要がありますが(call_context.py を参照)、新しいスレッドは親からコンテキストを自動的にコピーしないため、コールコンテキストが失われる可能性があります。このクラスは contextvar のコピーを自動化するため、このスレッドを使用すればユーザーが期待する通りに「ただ動作」します。
このクラスを使わずに、次のように記述することで同じ効果を得ることもできます:
method __init__
property daemon
このスレッドがデーモンスレッドかどうかを示すブール値。 これは start() が呼び出される前に設定する必要があり、そうでない場合は RuntimeError が発生します。初期値は作成元のスレッドから継承されます。メインスレッドはデーモンスレッドではないため、メインスレッドで作成されたすべてのスレッドはデフォルトで daemon = False になります。 デーモンスレッドのみが残ると、Python プログラム全体が終了します。property ident
このスレッドのスレッド識別子。まだ開始されていない場合は None。 これは 0 以外の整数です。get_ident() 関数を参照してください。スレッド識別子は、スレッドが終了して別のスレッドが作成されたときに再利用される可能性があります。識別子はスレッドが終了した後でも利用可能です。property name
識別目的のみに使用される文字列。 セマンティクスはありません。複数のスレッドに同じ名前を付けることができます。初期名はコンストラクターによって設定されます。property native_id
このスレッドのネイティブ整数スレッド ID。まだ開始されていない場合は None。 これは非負の整数です。get_native_id() 関数を参照してください。これはカーネルによって報告されるスレッド ID を表します。Source
method run
Source
class ThreadContext
現在のスレッドおよびターンの情報へのアクセスを提供するコンテキストオブジェクト。
Source
method __init__
property thread_id
このコンテキストの thread_id を取得します。thread_id: このコンテキストのスレッド識別子。無効な場合は None。 戻り値: スレッド識別子。スレッドトラッキングが無効な場合は None。
property turn_id
アクティブなコンテキストから現在の turn_id を取得します。 戻り値: 設定されている場合は現在の turn_id、そうでない場合は None。Source
class ContextAwareThreadPoolExecutor
呼び出し元のコンテキストで関数を実行する ThreadPoolExecutor。
これは concurrent.futures.ThreadPoolExecutor のドロップインリプレースメントであり、エグゼキューター内での weave の呼び出しが期待通りに動作することを保証します。Weave は特定の contextvars が設定されている必要がありますが(call_context.py を参照)、新しいスレッドは親からコンテキストを自動的にコピーしないため、コールコンテキストが失われる可能性があります。このクラスは contextvar のコピーを自動化するため、このエグゼキューターを使用すればユーザーが期待する通りに「ただ動作」します。
このクラスを使わずに、次のように記述することで同じ効果を得ることもできます:
method __init__
Source
method map
Source
method submit
Source
function as_op
fn: weave.op デコレートされた関数。 戻り値: 関数の Op。
Source
function attributes
Source
function finish
Source
function get
uri: 完全修飾された weave ref URI。 戻り値: オブジェクト。
Source
function get_client
Source
function get_current_call
返された Call のattributes辞書は、コールが開始されると不変(immutable)になります。Op を呼び出す前にコールのメタデータを設定するには、:func:weave.attributesを使用してください。summaryフィールドは Op の実行中に更新される可能性があり、コール終了時に計算されたサマリー情報とマージされます。
Source
function init
project_name: ログを記録する Weights & Biases の Team 名と Project 名。Team を指定しない場合、デフォルトの Entity が使用されます。デフォルトの Entity を確認または更新するには、W&B Models ドキュメントの User Settings を参照してください。settings: Weave クライアント全般の設定。autopatch_settings: (非推奨) オートパッチインテグレーションの設定。代わりに明示的なパッチ適用を使用してください。global_postprocess_inputs: すべての op のすべての入力に適用される関数。global_postprocess_output: すべての op のすべての出力に適用される関数。global_attributes: すべてのトレースに適用される属性の辞書。 戻り値: Weave クライアント。
Source
function log_call
op(str): ログに記録する操作名。これはコールの op_name として使用されます。匿名操作(公開された op を参照しない文字列)もサポートされています。inputs(dict[str, Any]): 操作の入力パラメータの辞書。output(Any): 操作の出力/結果。parent(Call | None): このコールをネストさせるオプションの親コール。指定されない場合、コールはルートレベルのコールになります(または、存在する場合は現在のコールコンテキストの下にネストされます)。デフォルトは None。attributes(dict[str, Any] | None): コールにアタッチするオプションのメタデータ。これらはコール作成時に固定(凍結)されます。デフォルトは None。display_name(str | Callable[[Call], str] | None): UI でのコールのオプションの表示名。文字列、またはコールを受け取って文字列を返す呼び出し可能オブジェクトを指定できます。デフォルトは None。use_stack(bool): コールを実行時スタックにプッシュするかどうか。True の場合、コールはコールコンテキストで利用可能になり、weave.require_current_call() を介してアクセスできます。False の場合、コールはログに記録されますが、コールスタックには追加されません。デフォルトは True。exception(BaseException | None): 操作が失敗した場合にログに記録するオプションの例外。デフォルトは None。
Call: 完全なトレース情報を持つ、作成および完了済みの Call オブジェクト。
Source
function publish
obj: 保存およびバージョン管理するオブジェクト。name: オブジェクトを保存する名前。 戻り値: 保存されたオブジェクトへの Weave Ref。
Source
function ref
location: Weave Ref URI、またはweave.init()が呼び出されている場合はname:versionまたはname。バージョンが提供されない場合はlatestが使用されます。 戻り値: オブジェクトへの Weave Ref。
Source
function require_current_call
weave.init から返された WeaveClient の get_call メソッドを使用して Call オブジェクトを取得できます。
call メソッドを使用することもできます。例:
NoCurrentCallError: トラッキングが初期化されていない場合や、このメソッドが Op 外で呼び出された場合。
Source
function set_view
_weave.views.<name> にカスタムビューをアタッチします。
引数:
name: ビュー名(summary._weave.views下のキー)。content:weave.Contentインスタンスまたは生の文字列。文字列は、提供された拡張子または mimetype を使用してContent.from_text経由でラップされます。extension:contentが文字列の場合に使用するオプションのファイル拡張子。mimetype:contentが文字列の場合に使用するオプションの MIME タイプ。metadata: テキストからContentを作成する際にアタッチするオプションのメタデータ。encoding: テキストからContentを作成する際に適用するテキストエンコーディング。 戻り値: None
import weave
weave.init(“proj”) @weave.op … def foo(): … weave.set_view(“readme”, ”# Hello”, extension=“md”) … return 1 foo()
Source
function thread
-
thread_id: このコンテキスト内のコールに関連付けるスレッド識別子。指定されない場合、UUID v7 が自動生成されます。None の場合、スレッドトラッキングは無効になります。 Yields: -
ThreadContext: thread_id および現在の turn_id へのアクセスを提供するオブジェクト。
Source