メインコンテンツへスキップ

API 概要


class CrossProjectRefError

クライアント側でダイジェストを計算する際に、内部 ID に解決できない別のprojectへの ref に遭遇した場合に発生します。

class FlushStatus

現在のフラッシュ処理のステータス情報。

class NoInternalProjectIDError

内部project ID がまだ解決されていないため、クライアント側でダイジェストを計算できない場合に発生します。

class PendingJobCounts

各タイプの保留中ジョブ数。

class WeaveClient

method __init__

__init__(
    entity: 'str',
    project: 'str',
    server: 'TraceServerClientInterface',
    ensure_project_exists: 'bool' = True,
    postprocess_inputs: 'PostprocessInputsFunc | None' = None,
    postprocess_output: 'PostprocessOutputFunc | None' = None,
    attributes: 'dict[str, Any] | None' = None,
    api_key: 'str | None' = None
)

プロパティ num_outstanding_jobs

すべてのエグゼキュータとサーバーにわたる、保留中のジョブの総数を返します。 このプロパティを使用すると、メインスレッドをブロックすることなく、バックグラウンドタスクの進行状況を確認できます。 戻り値:
  • int: 保留中のジョブの総数

プロパティ project_id


method add_calls_to_annotation_queue

add_calls_to_annotation_queue(
    queue_id: 'str',
    call_ids: 'list[str]',
    display_fields: 'list[str]'
) → AnnotationQueueAddCallsRes
Call をアノテーションキューに追加します。 引数:

method add_cost

add_cost(
    llm_id: 'str',
    prompt_token_cost: 'float',
    completion_token_cost: 'float',
    effective_date: 'datetime | None' = None,
    prompt_token_cost_unit: 'str | None' = 'USD',
    completion_token_cost_unit: 'str | None' = 'USD',
    provider_id: 'str | None' = 'default'
) → CostCreateRes
現在のprojectにコストを追加します。
  • queue_id: アノテーションキューの ID。
  • call_ids: キューに追加する Call ID。
  • display_fields: inputs.promptoutput.text など、レビュアーに表示する JSON パス。 例:
client.add_cost(llm_id="my_expensive_custom_model", prompt_token_cost=1, completion_token_cost=2)
client.add_cost(llm_id="my_expensive_custom_model", prompt_token_cost=500, completion_token_cost=1000, effective_date=datetime(1998, 10, 3))
引数:
  • llm_id: LLM の ID。例: “gpt-4o-mini-2024-07-18”
  • prompt_token_cost: プロンプトトークンあたりのコスト。例: .0005
  • completion_token_cost: 補完トークンあたりのコスト。例: .0015
  • effective_date: デフォルトは現在の日付です。datetime.datetime オブジェクト。
  • provider_id: LLM のプロバイダー。デフォルトは “default” です。例: “openai”
  • prompt_token_cost_unit: プロンプトトークンのコスト単位。デフォルトは “USD” です。 (現在は未使用ですが、将来的にはコストの通貨タイプを指定するために使用されます。例: “tokens” または “time”)
  • completion_token_cost_unit: 補完トークンのコスト単位。デフォルトは “USD” です。 (現在は未使用ですが、将来的にはコストの通貨タイプを指定するために使用されます。例: “tokens” または “time”) 戻り値: CostCreateRes オブジェクト。ids という名前のタプルのリストを 1 つのフィールドとして持ちます。各タプルには llm_id と、作成されたコストオブジェクトの ID が含まれます。

method add_tags

add_tags(obj_ref: 'ObjectRef | str', tags: 'list[str]') → None
オブジェクトのバージョンに タグ を追加します。 引数:

method clear_wandb_run_context

clear_wandb_run_context() → None
wandb run コンテキストのオーバーライドをクリアします。 これを呼び出すと、Call は run_id と step の情報にグローバルな wandb.run (利用可能な場合) を使うようフォールバックします。
  • obj_ref: オブジェクトのバージョンへの参照です。ObjectRef または weave /// URI 文字列のいずれかです。
  • tags: 追加するタグ文字列のリスト。 例:
client = weave.init("my-project")
client.set_wandb_run_context(run_id="my-run-id", step=5)
# ... いくつかの Call を実行 ...
client.clear_wandb_run_context()
# これ以降の Call はグローバルな wandb.run を使用します

method create_annotation_queue

create_annotation_queue(
    name: 'str',
    scorer_refs: 'list[str]',
    description: 'str' = ''
) → str
このprojectのアノテーションキューを作成します。 引数:
  • name: キューの表示名。
  • scorer_refs: レビュー担当者が入力する scorer / アノテーションフィールドの Weave ref。
  • description: 任意のレビュー担当者向けガイドライン、またはキューの説明。 戻り値: 作成したアノテーションキューの ID。

method create_call

create_call(
    op: 'str | Op',
    inputs: 'dict[str, Any]',
    parent: 'Call | None' = None,
    attributes: 'dict[str, Any] | None' = None,
    display_name: 'str | Callable[[Call], str] | None' = None,
    use_stack: 'bool' = True,
    _call_id_override: 'str | None' = None,
    started_at: 'datetime | None' = None
) → Call
Call を作成し、ログし、ランタイムスタックにプッシュします。 引数:
  • op: Call を生成する op、または無名の op の名前。
  • inputs: 操作への入力。
  • parent: 親 Call。parent が指定されていない場合は、現在の run が親として使用されます。
  • display_name: Call の表示名。デフォルトは None です。
  • attributes: Call の属性。デフォルトは None です。
  • use_stack: Call をランタイムスタックにプッシュするかどうか。デフォルトは True です。
  • started_at: Call の開始時刻を上書きします。None の場合は、現在時刻を使用します。 戻り値: 作成された Call オブジェクト。

method delete_all_object_versions

delete_all_object_versions(object_name: 'str') → int
オブジェクトのすべてのバージョンを削除します。 引数:
  • object_name: バージョンを削除する対象のオブジェクト名。 戻り値: 削除されたバージョンの数。

method delete_all_op_versions

delete_all_op_versions(op_name: 'str') → int
op のすべてのバージョンを削除します。 引数:
  • op_name: バージョンを削除する対象の op の名前。 戻り値: 削除されたバージョンの数。

method delete_annotation_queue

delete_annotation_queue(queue_id: 'str') → AnnotationQueueSchema
アノテーションキューを論理削除します。

method delete_call

delete_call(call: 'Call') → None

method delete_calls

delete_calls(call_ids: 'list[str]') → None
ID を指定して Call を削除します。 Call を削除すると、そのすべての子 Call も削除されます。 引数:

method delete_object_version

delete_object_version(object: 'ObjectRef') → None

method delete_object_versions

delete_object_versions(object_name: 'str', digests: 'list[str]') → int
オブジェクトの特定のバージョンを削除します。
  • call_ids: 削除する Call ID のリスト。例: [“2F0193e107-8fcf-7630-b576-977cc3062e2e”] 引数:
  • object_name: バージョンを削除する対象のオブジェクトの名。
  • digests: 削除する digest のリスト。“latest” や “v0” などのエイリアスを含めることができます。 戻り値: 削除されたバージョンの数。

method delete_op_version

delete_op_version(op: 'OpRef') → None

method fail_call

fail_call(call: 'Call', exception: 'BaseException') → None
例外を発生させて Call を失敗させます。これは finish_call のための簡易 method です。

method finish

finish(
    use_progress_bar: 'bool' = True,
    callback: 'Callable[[FlushStatus], None] | None' = None
) → None
すべてのバックグラウンドタスクをフラッシュし、確実に処理されるようにします。 このメソッドは、現在キューに入っているすべてのジョブが処理されるまでブロックし、保留中のタスクのステータスを示す進行状況バーを表示します。メインスレッドの実行中も並列処理を維持し、データがサーバーにアップロードされる前にユーザーコードの実行が完了する場合は、パフォーマンスの向上につながることがあります。 引数:

method finish_call

finish_call(
    call: 'Call',
    output: 'Any' = None,
    exception: 'BaseException | None' = None,
    op: 'Op | None' = None,
    ended_at: 'datetime | None' = None
) → None
Call を完了し、その結果を永続化します。 call.summary に含まれる値は、データベースに書き込まれる前に、計算された summary 統計 (使用量やステータスのカウントなど) とディープマージされます。

method flush

flush() → None
バックグラウンドで実行中の非同期タスクをフラッシュします。複数回呼び出しても問題ありません。

method get

get(ref: 'ObjectRef', objectify: 'bool' = True) → Any

method get_agent_custom_attributes

get_agent_custom_attributes(
    query: 'Query | None' = None,
    started_after: 'datetime | None' = None,
    started_before: 'datetime | None' = None,
    limit: 'int' = 200,
    offset: 'int' = 0
) → AgentCustomAttrsSchemaRes
条件に一致するエージェント スパン上の、型付きカスタム属性キーを取得します。 フィルター/列ピッカーの候補を設定する際に便利です。選択したスパンで確認されたカスタム属性キー (およびその値のタイプ) を返します。
  • use_progress_bar: flush 時にプログレスバーを表示するかどうか。プログレスバーが適切に表示されない環境 (例: CI 環境) では、False に設定します。
  • callback: ステータス更新を受け取るオプションのコールバック関数。use_progress_bar より優先されます。 引数:
  • query: スパンを絞り込むための Mongo スタイルのフィルター式。
  • started_after: この時刻以降に開始されたスパンのみを対象にします。
  • started_before: この時刻より前に開始されたスパンのみを対象にします。
  • limit: 返す属性キーの最大数。
  • offset: スキップするキーの数 (ページネーション用)。 戻り値: attributeshas_more を含む AgentCustomAttrsSchemaRes
例:
client = weave.init("entity/project")
resp = client.get_agent_custom_attributes()
for attr in resp.attributes:
     print(attr.key, attr.value_type, attr.span_count)

method get_agent_span_stats

get_agent_span_stats(
    start: 'datetime',
    metrics: 'list[AgentSpanStatsMetricSpec]',
    end: 'datetime | None' = None,
    query: 'Query | None' = None,
    group_by: 'list[AgentGroupByRef] | None' = None,
    granularity: 'int | None' = None,
    timezone: 'str' = 'UTC'
) → AgentSpanStatsRes
エージェント スパンに対して、チャート用にそのまま利用できる集約を計算します。 一般的な時系列 / グループ化メトリクスのケースを対象としています。数値バケットの統計やその他の高度なオプションについては、server.agent_spans_stats を直接呼び出してください。 引数:
  • start: 時間範囲の開始 (この値を含む) 。
  • metrics: 集約する 1 つ以上のメトリクス (例: token の合計) 。
  • end: 時間範囲の終了。省略した場合はデフォルトで現在時刻になります。
  • query: スパンを絞り込むための Mongo スタイルのフィルター式。
  • group_by: 集約のグループ化に使用するスパン フィールド。
  • granularity: 時系列統計に使用する、秒単位の時間バケット幅。
  • timezone: 時間バケットの位置合わせに使用する IANA タイムゾーン。 戻り値: columnsrows を含む AgentSpanStatsRes
例:
client = weave.init("entity/project")
resp = client.get_agent_span_stats(start=start, metrics=metrics)
for row in resp.rows:
     print(row)

method get_agent_spans

get_agent_spans(
    agent_name: 'str | None' = None,
    query: 'Query | None' = None,
    sort_by: 'list[AgentSortBy] | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None,
    page_size: 'int' = 100
) → AgentSpansIter
この project のエージェント スパンをクエリします。必要に応じてフィルターできます。 PaginatedIterator (get_calls と同様) を返します。このイテレーターは、消費に応じてページを取得します。len(...) はスパンの総数を返します。 引数:
  • agent_name: 指定した場合、結果をこのエージェントに限定します (agent_name フィールドに対して query を指定するための簡易ショートカットです) 。
  • query: Mongo スタイルのフィルター式です。両方が指定された場合は、$andagent_name と結合されます。
  • sort_by: 結果の並べ替えに使用するフィールドです。
  • limit: yield するスパンの最大数です。None の場合はすべて yield します。
  • offset: yield を開始する前にスキップするスパン数です (ページネーション用) 。
  • page_size: リクエストごとに取得するスパン数です。 戻り値: AgentSpanSchemaPaginatedIterator
例:
client = weave.init("entity/project")
for span in client.get_agent_spans(agent_name="my-agent"):
     print(span.span_id, span.span_name, span.input_tokens)

method get_agent_turn

get_agent_turn(
    trace_id: 'str',
    include_feedback: 'bool' = False
) → AgentTraceChatRes
1 つのターンの構造化チャットビュー (messages) を取得します。 各ターンは 1 つの trace に対応します。 引数:
  • trace_id: チャットビューを取得する対象の trace。
  • include_feedback: true の場合、messages に対する feedback を含めます。 戻り値: ターンに対応する、順序付けされた messages を含む AgentTraceChatRes
例:
client = weave.init("entity/project")
resp = client.get_agent_turn(trace_id="...", include_feedback=True)
for message in resp.messages:
     print(message.type)

メソッド get_agent_turns

get_agent_turns(
    conversation_id: 'str',
    limit: 'int' = 50,
    offset: 'int' = 0,
    include_feedback: 'bool' = False
) → AgentConversationChatRes
会話の multi-turn chat view を取得します。 各ターンは 1 つの トレース に対応します。 引数:
  • conversation_id: ターンを取得する対象の会話。
  • limit: 返すターンの最大数。
  • offset: スキップする最新のターン数 (pagination 用) 。
  • include_feedback: true の場合、メッセージの フィードバック を含めます。 戻り値: 順序どおりの turns を含む AgentConversationChatRes
例:
client = weave.init("entity/project")
resp = client.get_agent_turns(conversation_id="...", limit=20)
for turn in resp.turns:
     for message in turn.messages:
         print(message.type)

メソッド get_agent_versions

get_agent_versions(
    agent_name: 'str',
    sort_by: 'list[AgentSortBy] | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None,
    page_size: 'int' = 100
) → AgentVersionsIter
単一のエージェントのバージョンを、集計された統計情報とともに一覧表示します。 要素の消費に応じてページを取得する PaginatedIterator (get_calls と同様) を返します。len(...) はバージョンの総数を示します。 引数:
  • agent_name: バージョンを一覧表示する対象のエージェント。
  • sort_by: 結果の並べ替えに使用するフィールド。
  • limit: 返されるバージョンの最大数です。None の場合はすべて返します。
  • offset: 返し始める前にスキップするバージョン数です (pagination 用) 。
  • page_size: リクエストごとに取得するバージョン数。 戻り値: AgentVersionSchema を反復処理する PaginatedIterator
例:
client = weave.init("entity/project")
for version in client.get_agent_versions(agent_name="my-agent"):
     print(version.agent_version, version.total_input_tokens)

メソッド get_agents

get_agents(
    agent_name: 'str | None' = None,
    sort_by: 'list[AgentSortBy] | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None,
    page_size: 'int' = 100
) → AgentsIter
この project 内のエージェントを、集計済みの統計情報とともに一覧表示します。 PaginatedIterator (get_calls と同様) を返します。これは、要素を取り出すのに応じてページを透過的に取得します。len(...) はエージェントの総数を返し、インデックス指定とスライスもサポートされます。 引数:
  • agent_name: 指定した場合、結果をこのエージェントに限定します。
  • sort_by: 結果の並べ替えに使用するフィールドです。
  • limit: 返されるエージェントの最大数です。None の場合はすべて返されます。
  • offset: 返却を開始する前にスキップするエージェント数です (ページネーション用) 。
  • page_size: リクエストごとに取得するエージェント数です。 戻り値: AgentSchema に対する PaginatedIterator
例:
client = weave.init("entity/project")
for agent in client.get_agents(limit=20):
     print(agent.agent_name, agent.total_input_tokens)

メソッド get_aliases

get_aliases(obj_ref: 'ObjectRef | str') → list[str]
オブジェクトのバージョンのエイリアスを取得します。 引数:
  • obj_ref: オブジェクトのバージョンへの参照。ObjectRef または weave /// URI 文字列を指定します。 戻り値: エイリアス文字列のリスト。オブジェクトのバージョンが最新の場合は、仮想的な “latest” エイリアスも含まれます。

メソッド get_annotation_queue

get_annotation_queue(queue_id: 'str') → AnnotationQueueSchema
ID を指定して単一のアノテーションキューを取得します。

メソッド get_annotation_queue_stats

get_annotation_queue_stats(
    queue_ids: 'list[str]'
) → list[AnnotationQueueStatsSchema]
アノテーションキュー内の項目の完了統計を取得します。

メソッド get_call

get_call(
    call_id: 'str',
    include_costs: 'bool' = False,
    include_feedback: 'bool' = False,
    columns: 'list[str] | None' = None
) → WeaveObject
IDを指定して単一のCallを取得します。 引数:
  • call_id: 取得するCallのID。
  • include_costs: true の場合、コスト情報が summary.weave に含まれます
  • include_feedback: true の場合、フィードバック情報が summary.weave.feedback に含まれます
  • columns: レスポンスに含めるカラムのリスト。None の場合は、すべてのカラムが含まれます。指定するカラムを少なくすると、パフォーマンスが向上する場合があります。一部のカラムは常に含まれます: id, project_id, trace_id, op_name, started_at 戻り値: Call オブジェクト。

メソッド get_calls

get_calls(
    filter: 'CallsFilterLike | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None,
    sort_by: 'list[SortByLike] | None' = None,
    query: 'QueryLike | None' = None,
    include_costs: 'bool' = False,
    include_feedback: 'bool' = False,
    include_storage_size: 'bool' = False,
    include_total_storage_size: 'bool' = False,
    include_usernames: 'bool' = False,
    columns: 'list[str] | None' = None,
    expand_columns: 'list[str] | None' = None,
    return_expanded_column_values: 'bool' = True,
    scored_by: 'str | list[str] | None' = None,
    page_size: 'int' = 1000
) → CallsIter
このprojectのトレースされた Call (操作) のリストを取得します。 このメソッドは、トレースデータをクエリするための強力で柔軟なインターフェースを提供します。ページネーション、フィルタリング、ソート、フィールド射影、スコアリングメタデータをサポートしており、カスタムのトレース UI や分析ツールの実装に使用できます。 パフォーマンスのヒント: columns を指定し、filter または query を使用して結果サイズを小さくしてください。 引数:
  • filter: op_nameparent_ids などのフィールドで結果を絞り込むための高レベルのフィルター。
  • limit: 返される Call の最大数。
  • offset: 結果を返す前にスキップする Call の数 (ページネーションに使用) 。
  • sort_by: 結果のソートに使用するフィールドのリスト (例: started_at desc) 。
  • query: 高度なフィルタリングのための Mongo 風の式。すべての Mongo 演算子がサポートされるわけではありません。
  • include_costs: True の場合、summary.weave に token/コスト情報を含めます。
  • include_feedback: True の場合、summary.weave.feedback にフィードバックを含めます。
  • include_storage_size: True の場合、Call のストレージサイズを含めます。
  • include_total_storage_size: True の場合、トレース の合計ストレージサイズを含めます。
  • include_usernames: True の場合、各 Call の wb_user_idwb_username に解決しようとします。
  • columns: Call ごとに返すフィールドのリスト。これを減らすことで、パフォーマンスを大幅に改善できます。 (idtrace_idop_namestarted_at などの一部のフィールドは常に含まれます。)
  • scored_by: 1 つ以上の scorer (名または ref URI) でフィルターします。複数の scorer は AND 条件として扱われます。
  • page_size: 1 ページあたりに取得する Call の数。大規模なクエリでのパフォーマンス向上のために調整してください。
戻り値:
  • CallsIter: Call オブジェクトを反復するイテレーター。スライス、反復、.to_pandas() をサポートします。
例:
calls = client.get_calls(
     filter=CallsFilter(op_names=["my_op"]),
     columns=["inputs", "output", "summary"],
     limit=100,
)
for call in calls:
     print(call.inputs, call.output)

メソッド get_evaluation

get_evaluation(uri: 'str') → Evaluation
特定の 評価 オブジェクトを URI で取得します。 評価 URI は通常、次の形式です: weave:///entity/project/object/Evaluation:version 「フレンドリ名」を使って 評価 を取得することもできます: get_evaluation(“Evaluation:v1”) 引数:
  • uri (str): 取得する 評価 の一意のリソース識別子。
戻り値:
  • Evaluation: 指定した URI に対応する 評価 オブジェクト。
発生する例外:
  • TypeError: URI のオブジェクトが 評価 インスタンスではない場合。
  • ValueError: URI が無効な場合、またはオブジェクトが見つからない場合。
例:
client = weave.init("my-project")
evaluation = client.get_evaluation("weave:///entity/project/object/my-eval:v1")
print(evaluation.name)

メソッド get_evaluations

get_evaluations() → list[Evaluation]
現在のproject内のすべての評価オブジェクトを取得します。 戻り値:
  • list[Evaluation]: 現在のproject内にあるすべての評価オブジェクトのリスト。評価が見つからない場合、またはすべての変換に失敗した場合は、空のリストを返します。
例:
client = weave.init("my-project")
evaluations = client.get_evaluations()
print(f"Found {len(evaluations)} evaluations")
for eval in evaluations:
     print(f"Evaluation: {eval.name}")

メソッド get_feedback

get_feedback(
    query: 'Query | str | None' = None,
    reaction: 'str | None' = None,
    offset: 'int' = 0,
    limit: 'int' = 100
) → FeedbackQuery
フィードバックを取得するためにprojectをクエリします。 例:
# 特定のフィードバックオブジェクトを取得します。
# これはコレクションを返すことに注意してください。コレクションには
# 0 件または 1 件のアイテムが含まれることが想定されています。
client.get_feedback("1B4082A3-4EDA-4BEB-BFEB-2D16ED59AA07")

# 特定のリアクションを持つすべてのフィードバックオブジェクトを検索します。
client.get_feedback(reaction="👍", limit=10)

# Mongoスタイルのクエリを使用して、特定のフィードバックタイプを持つ
# すべてのフィードバックオブジェクトを検索します。
from weave.trace_server.interface.query import Query

query = Query(
    **{
        "$expr": {
            "$eq": [
                {"$getField": "feedback_type"},
                {"$literal": "wandb.reaction.1"},
            ],
        }
    }
)
client.get_feedback(query=query)
引数:
  • query: Mongoスタイルのクエリ式です。利便性のため、フィードバック UUID 文字列も指定できます。
  • reaction: 利便性のため、特定のリアクション絵文字でフィルタリングできます。
  • offset: フィードバックオブジェクトの取得を開始する位置のオフセットです。
  • limit: 取得するフィードバックオブジェクトの最大数です。 戻り値: FeedbackQuery オブジェクトです。

メソッド get_tags

get_tags(obj_ref: 'ObjectRef | str') → list[str]
オブジェクトのバージョンに付与されたタグを取得します。 引数:
  • obj_ref: オブジェクトのバージョンを参照する値です。ObjectRef または weave:/// URI 文字列を指定します。 戻り値: タグ文字列のリストです。オブジェクトのバージョンにタグがない場合は、空のリストを返します。

メソッド get_tags_and_aliases

get_tags_and_aliases(obj_ref: 'ObjectRef | str') → tuple[list[str], list[str]]
オブジェクトのバージョンに対する タグ とエイリアスの両方を、1 回の呼び出しで取得します。 引数:
  • obj_ref: オブジェクトのバージョンへの参照です。ObjectRef または weave /// URI 文字列のいずれかを指定します。 戻り値: (タグ, エイリアス) のタプルを返します。どちらも文字列のリストです。オブジェクトのバージョンに タグ またはエイリアスがない場合は、空のリストを返します。

link_prompt_to_registry(
    prompt: 'LinkablePrompt',
    target_path: 'str',
    aliases: 'Sequence[str] | None' = None
) → LinkAssetToRegistryRes
公開済みの prompt バージョンを Registry にリンクします。 引数:
  • prompt: 公開済みの prompt、ObjectRef、または完全修飾された weave:///... URI 文字列。
  • target_path: <registry_project>/<portfolio_name> 形式の Registry の宛先パス。例: wandb-registry-prompts/my-prompt-collection
  • aliases: 作成される Registry バージョンに付与するオプションのエイリアス。 戻り値:
  • LinkAssetToRegistryRes: registry-link エンドポイントからのパース済みレスポンス。

メソッド list_aliases

list_aliases() → list[str]
project内の重複しないエイリアスをすべて一覧表示します。 戻り値: project内のすべてのエイリアス文字列のリスト。

メソッド list_annotation_queue_items

list_annotation_queue_items(
    queue_id: 'str',
    filter: 'AnnotationQueueItemsFilter | None' = None,
    sort_by: 'list[SortBy] | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None,
    include_position: 'bool' = False
) → list[AnnotationQueueItemSchema]
アノテーションキューに割り当てられた Call の一覧を表示します。

メソッド list_annotation_queues

list_annotation_queues(
    name: 'str | None' = None,
    sort_by: 'list[SortBy] | None' = None,
    limit: 'int | None' = None,
    offset: 'int | None' = None
) → list[AnnotationQueueSchema]
この project のアノテーションキューを一覧表示します。

メソッド list_tags

list_tags() → list[str]
project内の重複のないすべての タグ を一覧表示します。 戻り値: project内のすべての タグ 文字列のリスト。

メソッド purge_costs

purge_costs(ids: 'list[str] | str') → None
現在のprojectのコストを削除します。 例:
client.purge_costs([ids])
client.purge_costs(ids)
引数:

メソッド query_costs

query_costs(
    query: 'Query | str | None' = None,
    llm_ids: 'list[str] | None' = None,
    offset: 'int' = 0,
    limit: 'int' = 100
) → list[CostQueryOutput]
projectのコストをクエリします。
  • ids: 削除するコスト ID。単一の ID または複数の ID を指定できます。 例:
# 特定の cost オブジェクトを取得します。
# これはコレクションを返すことに注意してください。0 件または 1 件のアイテムが含まれることが想定されます。
client.query_costs("1B4082A3-4EDA-4BEB-BFEB-2D16ED59AA07")

# 特定のリアクションを持つすべての cost オブジェクトを検索します。
client.query_costs(llm_ids=["gpt-4o-mini-2024-07-18"], limit=10)
引数:
  • query: Mongo スタイルのクエリ式です。便宜上、cost UUID 文字列も受け付けます。
  • llm_ids: 便宜上、llm_ids の集合でフィルターします。
  • offset: cost オブジェクトの取得を開始する位置を指定するオフセットです。
  • limit: 取得する cost オブジェクトの最大数です。 戻り値: CostQuery オブジェクト。

メソッド remove_aliases

remove_aliases(obj_ref: 'ObjectRef | str', alias: 'str | list[str]') → None
オブジェクトから 1 つ以上のエイリアスを削除します。 引数:

メソッド remove_tags

remove_tags(obj_ref: 'ObjectRef | str', tags: 'list[str]') → None
オブジェクトのバージョンからタグを削除します。
  • obj_ref: オブジェクトへの参照です。ObjectRef または weave:/// URI 文字列のいずれかです (エイリアス はオブジェクト スコープであるため、digest は使用されません) 。
  • alias: 削除する エイリアス 名、または エイリアス 名のリストです。 引数:

メソッド save

save(val: 'Any', name: 'str', branch: 'str' = 'latest') → Any
直接呼び出さず、代わりに weave.publish() を使用してください。
  • obj_ref: オブジェクトのバージョンへの参照です。ObjectRef または weave /// URI 文字列のいずれかです。
  • tags: 削除するタグ文字列のリストです。 引数:
  • val: 保存するオブジェクト。
  • name: オブジェクトを保存するときの名前。
  • branch: オブジェクトを保存するときのブランチ。デフォルトは “latest” です。 戻り値: 保存したオブジェクトをデシリアライズしたもの。

メソッド search_agents

search_agents(
    query: 'str' = '',
    agent_name: 'str | None' = None,
    conversation_id: 'str | None' = None,
    trace_id: 'str | None' = None,
    limit: 'int' = 20,
    offset: 'int' = 0
) → AgentSearchRes
会話ごとにグループ化して、内容に基づいてエージェントのメッセージを検索します。 メッセージの内容 (および/または以下の構造化フィルター) を検索し、一致したメッセージを含む会話を返します。query が空の場合は、フィルターに基づく構造化検索として実行されます。 引数:
  • query: メッセージ内容内で一致させる部分文字列です。空の場合はすべてに一致します。
  • agent_name: このエージェントからのメッセージに限定します。
  • conversation_id: 1 つの会話に限定します。
  • trace_id: 1 つの トレース に限定します。
  • limit: 対象とする一致メッセージの最大数です。
  • offset: スキップする一致件数です (pagination 用) 。 戻り値: 一致した会話を表す results を含む AgentSearchRes です。
例:
client = weave.init("entity/project")
resp = client.search_agents(query="timeout", agent_name="my-agent")
for conversation in resp.results:
     print(conversation.conversation_id, conversation.matched_messages)

メソッド set_aliases

set_aliases(obj_ref: 'ObjectRef | str', alias: 'str | list[str]') → None
オブジェクトのバージョンに 1 つ以上のエイリアスを設定します。 引数:

メソッド set_wandb_run_context

set_wandb_run_context(run_id: 'str', step: 'int | None' = None) → None
このクライアントによって作成される Call の wandb run_id と step をオーバーライドします。 これにより、グローバルな wandb.run シンボルに紐付いていない特定の WandB run に Weave Call を関連付けることができます。
  • obj_ref: オブジェクトのバージョンへの参照。ObjectRef または weave /// URI 文字列のいずれかです。
  • alias: 設定する エイリアス 名、または エイリアス 名のリスト (例: “production”)。 引数:
  • run_id: run ID (entity/project のプレフィックスを含まない) 。クライアントが entity/project のプレフィックスを自動的に追加します。
  • step: Call に使用する step 番号。None の場合、step は設定されません。 例:
client = weave.init("my-project")
client.set_wandb_run_context(run_id="my-run-id", step=5)
# これで、すべての Call が step 5 の entity/project/my-run-id に関連付けられます

# step を指定しない場合
client.set_wandb_run_context(run_id="my-run-id")
# Call は step なしで entity/project/my-run-id に関連付けられます

メソッド update_annotation_queue

update_annotation_queue(
    queue_id: 'str',
    name: 'str | None' = None,
    description: 'str | None' = None,
    scorer_refs: 'list[str] | None' = None
) → AnnotationQueueSchema
アノテーションキューのメタデータを更新します。

関数 get_obj_name

get_obj_name(val: 'Any') → str

関数 get_parallelism_settings

get_parallelism_settings() → tuple[int | None, int | None]

関数 map_to_refs

map_to_refs(obj: 'Any') → Any

print_call_link(call: 'Call') → None

関数 redact_sensitive_keys

redact_sensitive_keys(obj: 'Any') → Any

関数 sanitize_object_name

sanitize_object_name(name: 'str') → str