异步客户端¶
langsmith.async_client ¶
Async LangSmith 客户端。
AsyncClient ¶
用于与 LangSmith API 交互的异步客户端。
| 方法 | 描述 |
|---|---|
__init__ |
初始化异步客户端。 |
__aenter__ |
进入异步客户端。 |
__aexit__ |
退出异步客户端。 |
aclose |
关闭异步客户端。 |
create_run |
创建一个运行。 |
update_run |
更新一个运行。 |
read_run |
读取一个运行。 |
list_runs |
从 LangSmith API 列出运行。 |
share_run |
异步获取运行的分享链接。 |
run_is_shared |
异步获取运行的分享状态。 |
read_run_shared_link |
异步检索特定运行的分享链接。 |
create_project |
创建一个项目。 |
read_project |
读取一个项目。 |
delete_project |
从 LangSmith 删除一个项目。 |
create_dataset |
创建一个数据集。 |
read_dataset |
读取一个数据集。 |
delete_dataset |
删除一个数据集。 |
list_datasets |
列出数据集。 |
create_example |
创建一个示例。 |
read_example |
读取一个示例。 |
list_examples |
列出示例。 |
create_feedback |
为一次运行创建反馈。 |
create_feedback_from_token |
通过预签名令牌或 URL 创建反馈。 |
create_presigned_feedback_token |
创建一个用于发送反馈数据的预签名 URL。 |
read_feedback |
读取反馈。 |
list_feedback |
列出反馈。 |
delete_feedback |
通过 ID 删除反馈。 |
list_annotation_queues |
列出 LangSmith API 上的标注队列。 |
create_annotation_queue |
在 LangSmith API 上创建一个标注队列。 |
read_annotation_queue |
读取具有指定队列 ID 的标注队列。 |
update_annotation_queue |
更新具有指定 queue_id 的标注队列。 |
delete_annotation_queue |
删除具有指定队列 ID 的标注队列。 |
add_runs_to_annotation_queue |
将运行添加到具有指定队列 ID 的标注队列中。 |
delete_run_from_annotation_queue |
从具有指定队列 ID 和运行 ID 的标注队列中删除一个运行。 |
get_run_from_annotation_queue |
从标注队列的指定索引处获取一个运行。 |
index_dataset |
启用数据集索引。示例按其输入进行索引。 |
sync_indexed_dataset |
同步数据集索引。此操作已每 5 分钟自动进行一次,但您可以调用此方法来强制同步。 |
similar_examples |
检索其输入与当前输入最匹配的数据集示例。 |
like_prompt |
点赞一个提示。 |
unlike_prompt |
取消点赞一个提示。 |
list_prompts |
带分页地列出提示。 |
get_prompt |
通过其标识符获取特定的提示。 |
create_prompt |
创建一个新的提示。 |
create_commit |
为现有提示创建一个提交。 |
update_prompt |
更新提示的元数据。 |
delete_prompt |
删除一个提示。 |
pull_prompt_commit |
从 LangSmith API 拉取一个提示对象。 |
list_prompt_commits |
列出给定提示的所有提交。 |
pull_prompt |
拉取一个提示并将其作为 LangChain PromptTemplate 返回。 |
push_prompt |
将一个提示推送到 LangSmith API。 |
__init__ ¶
__init__(
api_url: str | None = None,
api_key: str | None = None,
timeout_ms: int
| tuple[int | None, int | None, int | None, int | None]
| None = None,
retry_config: Mapping[str, Any] | None = None,
web_url: str | None = None,
)
初始化异步客户端。
create_run async ¶
create_run(
name: str,
inputs: dict[str, Any],
run_type: str,
*,
project_name: str | None = None,
revision_id: ID_TYPE | None = None,
**kwargs: Any,
) -> None
创建一个运行。
list_runs async ¶
list_runs(
*,
project_id: ID_TYPE | Sequence[ID_TYPE] | None = None,
project_name: str | Sequence[str] | None = None,
run_type: str | None = None,
trace_id: ID_TYPE | None = None,
reference_example_id: ID_TYPE | None = None,
query: str | None = None,
filter: str | None = None,
trace_filter: str | None = None,
tree_filter: str | None = None,
is_root: bool | None = None,
parent_run_id: ID_TYPE | None = None,
start_time: datetime | None = None,
error: bool | None = None,
run_ids: Sequence[ID_TYPE] | None = None,
select: Sequence[str] | None = None,
limit: int | None = None,
**kwargs: Any,
) -> AsyncIterator[Run]
从 LangSmith API 列出运行。
参数¶
project_id : UUID 或 None, default=None 用于筛选的项目 ID。 project_name : str 或 None, default=None 用于筛选的项目名称。 run_type : str 或 None, default=None 用于筛选的运行类型。 trace_id : UUID 或 None, default=None 用于筛选的跟踪 ID。 reference_example_id : UUID 或 None, default=None 用于筛选的参考示例 ID。 query : str 或 None, default=None 用于筛选的查询字符串。 filter : str 或 None, default=None 用于筛选的筛选字符串。 trace_filter : str 或 None, default=None 应用于跟踪树中根运行的筛选器。此参数旨在与常规的 filter 参数结合使用,以便您可以根据跟踪中根运行的属性来筛选运行。 tree_filter : str 或 None, default=None 应用于跟踪树中其他运行(包括兄弟和子运行)的筛选器。此参数旨在与常规的 filter 参数结合使用,以便您可以根据跟踪中任何运行的属性来筛选运行。 is_root : bool 或 None, default=None 是否按根运行进行筛选。 parent_run_id : UUID 或 None, default=None 用于筛选的父运行 ID。 start_time : datetime 或 None, default=None 用于筛选的开始时间。 error : bool 或 None, default=None 是否按错误状态进行筛选。 run_ids : List[str or UUID] 或 None, default=None 用于筛选的运行 ID。 limit : int 或 None, default=None 返回的最大运行数。 **kwargs : Any 额外的关键字参数。
产出:¶
运行 运行结果。
示例:¶
列出项目中的所有运行
.. code-block:: python
project_runs = client.list_runs(project_name="<your_project>")
列出过去 24 小时内的 LLM 和 Chat 运行
.. code-block:: python
todays_llm_runs = client.list_runs(
project_name="<your_project>",
start_time=datetime.now() - timedelta(days=1),
run_type="llm",
)
列出项目中的根跟踪
.. code-block:: python
root_runs = client.list_runs(project_name="<your_project>", is_root=1)
列出没有错误的运行
.. code-block:: python
correct_runs = client.list_runs(project_name="<your_project>", error=False)
列出运行并仅返回其输入/输出(以加快查询速度)
.. code-block:: python
input_output_runs = client.list_runs(
project_name="<your_project>", select=["inputs", "outputs"]
)
按运行 ID 列出运行
.. code-block:: python
run_ids = [
"a36092d2-4ad5-4fb4-9c0d-0dba9a2ed836",
"9398e6be-964f-4aa4-8ae9-ad78cd4b7074",
]
selected_runs = client.list_runs(id=run_ids)
列出所有耗时超过 10 秒且 `total_tokens` 大于 5000 的“链式”类型运行
.. code-block:: python
chain_runs = client.list_runs(
project_name="<your_project>",
filter='and(eq(run_type, "chain"), gt(latency, 10), gt(total_tokens, 5000))',
)
列出所有名为“extractor”的运行,其跟踪的根被分配了“user_score”评分为 1 的反馈
.. code-block:: python
good_extractor_runs = client.list_runs(
project_name="<your_project>",
filter='eq(name, "extractor")',
trace_filter='and(eq(feedback_key, "user_score"), eq(feedback_score, 1))',
)
列出所有在特定时间戳之后开始的运行,且“error”不为 null 或“Correctness”反馈评分为 0
.. code-block:: python
complex_runs = client.list_runs(
project_name="<your_project>",
filter='and(gt(start_time, "2023-07-15T12:34:56Z"), or(neq(error, null), and(eq(feedback_key, "Correctness"), eq(feedback_score, 0.0))))',
)
列出所有 `tags` 包含“experimental”或“beta”且 `latency` 大于 2 秒的运行
.. code-block:: python
tagged_runs = client.list_runs(
project_name="<your_project>",
filter='and(or(has(tags, "experimental"), has(tags, "beta")), gt(latency, 2))',
)
share_run async ¶
share_run(run_id: ID_TYPE, *, share_id: ID_TYPE | None = None) -> str
异步获取运行的分享链接。
| 参数 | 描述 |
|---|---|
run_id
|
要分享的运行的 ID。
类型: |
share_id
|
自定义分享 ID。如果未提供,将生成一个随机的 UUID。
类型: |
| 返回 | 描述 |
|---|---|
str
|
已分享运行的 URL。
类型: |
| 引发 | 描述 |
|---|---|
HTTPStatusError
|
如果 API 请求失败。 |
read_project async ¶
read_project(
project_name: str | None = None, project_id: ID_TYPE | None = None
) -> TracerSession
读取一个项目。
delete_project async ¶
从 LangSmith 删除一个项目。
参数¶
project_name : str 或 None, default=None 要删除的项目的名称。 project_id : str 或 None, default=None 要删除的项目的 ID。
read_dataset async ¶
读取一个数据集。
create_example async ¶
create_example(
inputs: dict[str, Any],
outputs: dict[str, Any] | None = None,
dataset_id: ID_TYPE | None = None,
dataset_name: str | None = None,
**kwargs: Any,
) -> Example
创建一个示例。
list_examples async ¶
list_examples(
*, dataset_id: ID_TYPE | None = None, dataset_name: str | None = None, **kwargs: Any
) -> AsyncIterator[Example]
列出示例。
create_feedback async ¶
create_feedback(
run_id: ID_TYPE | None,
key: str,
score: float | None = None,
value: Any | None = None,
comment: str | None = None,
**kwargs: Any,
) -> Feedback
为一次运行创建反馈。
| 参数 | 描述 |
|---|---|
run_id
|
要提供反馈的运行 ID。对于项目级别的反馈,可以为 None。
类型: |
key
|
此反馈所涉及的指标或方面的名称。
类型: |
score
|
用于评价此运行在指标或方面上的分数。
类型: |
value
|
此反馈的显示值或非数值。
类型: |
comment
|
关于此反馈的评论。
类型: |
**kwargs
|
包含在反馈数据中的额外关键字参数。
类型: |
| 返回 | 描述 |
|---|---|
反馈
|
ls_schemas.Feedback:已创建的反馈对象。 |
| 引发 | 描述 |
|---|---|
HTTPStatusError
|
如果 API 请求失败。 |
create_feedback_from_token async ¶
create_feedback_from_token(
token_or_url: str | UUID,
score: float | int | bool | None = None,
*,
value: float | int | bool | str | dict | None = None,
correction: dict | None = None,
comment: str | None = None,
metadata: dict | None = None,
) -> None
通过预签名令牌或 URL 创建反馈。
| 参数 | 描述 |
|---|---|
token_or_url
|
用于创建反馈的令牌或 URL。 |
score
|
反馈的分数。默认为 None。 |
value
|
反馈的值。默认为 None。 |
correction
|
反馈的修正。默认为 None。
类型: |
comment
|
反馈的评论。默认为 None。
类型: |
metadata
|
反馈的附加元数据。默认为 None。
类型: |
| 引发 | 描述 |
|---|---|
ValueError
|
如果源 API URL 无效。 |
| 返回 | 描述 |
|---|---|
None
|
此方法不返回任何内容。
类型: |
create_presigned_feedback_token async ¶
create_presigned_feedback_token(
run_id: ID_TYPE,
feedback_key: str,
*,
expiration: datetime | timedelta | None = None,
feedback_config: FeedbackConfig | None = None,
feedback_id: ID_TYPE | None = None,
) -> FeedbackIngestToken
创建一个用于发送反馈数据的预签名 URL。
这对于为基于浏览器的客户端提供一种直接向 LangSmith 上传反馈数据而无需访问 API 密钥的方式非常有用。
| 参数 | 描述 |
|---|---|
run_id
|
类型: |
feedback_key
|
类型: |
expiration
|
预签名 URL 的过期时间。可以是 datetime 或从现在开始的时间差。默认为 3 小时。 |
feedback_config
|
FeedbackConfig 或 None。如果首次创建 feedback_key,此参数定义了指标应如何解释,例如连续分数(带可选边界)或分类值的分布。
类型: |
feedback_id
|
要创建的反馈的 ID。如果未提供,将创建一个新的反馈。
类型: |
| 返回 | 描述 |
|---|---|
FeedbackIngestToken
|
用于上传反馈数据的预签名 URL。 |
list_feedback async ¶
list_feedback(
*,
run_ids: Sequence[ID_TYPE] | None = None,
feedback_key: Sequence[str] | None = None,
feedback_source_type: Sequence[FeedbackSourceType] | None = None,
limit: int | None = None,
**kwargs: Any,
) -> AsyncIterator[Feedback]
列出反馈。
delete_feedback async ¶
list_annotation_queues async ¶
list_annotation_queues(
*,
queue_ids: list[ID_TYPE] | None = None,
name: str | None = None,
name_contains: str | None = None,
limit: int | None = None,
) -> AsyncIterator[AnnotationQueue]
列出 LangSmith API 上的标注队列。
| 参数 | 描述 |
|---|---|
queue_ids
|
用于筛选的队列 ID。
类型: |
name
|
用于筛选的队列名称。
类型: |
name_contains
|
队列名称应包含的子字符串。
类型: |
limit
|
返回的最大队列数。
TYPE: |
| YIELDS | 描述 |
|---|---|
AsyncIterator[AnnotationQueue]
|
标注队列。 |
create_annotation_queue async ¶
create_annotation_queue(
*, name: str, description: str | None = None, queue_id: ID_TYPE | None = None
) -> AnnotationQueue
在 LangSmith API 上创建一个标注队列。
| 参数 | 描述 |
|---|---|
name
|
标注队列的名称。
类型: |
描述
|
标注队列的描述。
类型: |
queue_id
|
标注队列的 ID。
类型: |
| 返回 | 描述 |
|---|---|
AnnotationQueue
|
已创建的标注队列对象。
类型: |
read_annotation_queue async ¶
read_annotation_queue(queue_id: ID_TYPE) -> AnnotationQueue
读取具有指定队列 ID 的标注队列。
| 参数 | 描述 |
|---|---|
queue_id
|
要读取的标注队列的 ID。
类型: |
| 返回 | 描述 |
|---|---|
AnnotationQueue
|
标注队列对象。
类型: |
update_annotation_queue async ¶
delete_annotation_queue async ¶
add_runs_to_annotation_queue async ¶
add_runs_to_annotation_queue(queue_id: ID_TYPE, *, run_ids: list[ID_TYPE]) -> None
delete_run_from_annotation_queue async ¶
get_run_from_annotation_queue async ¶
get_run_from_annotation_queue(
queue_id: ID_TYPE, *, index: int
) -> RunWithAnnotationQueueInfo
index_dataset async ¶
启用数据集索引。示例按其输入进行索引。
这使得可以通过 `client.similar_examples()` 按输入搜索相似的示例。
| 参数 | 描述 |
|---|---|
dataset_id
|
要索引的数据集的 ID。
类型: |
tag
|
要索引的数据集的版本。如果是“latest”,则对数据集的任何更新(添加、更新、删除示例)都将反映在索引中。
类型: |
| 返回 | 描述 |
|---|---|
None
|
None |
sync_indexed_dataset async ¶
sync_indexed_dataset(*, dataset_id: ID_TYPE, **kwargs: Any) -> None
同步数据集索引。此操作已每 5 分钟自动进行一次,但您可以调用此方法来强制同步。
| 参数 | 描述 |
|---|---|
dataset_id
|
要同步的数据集的 ID。
类型: |
| 返回 | 描述 |
|---|---|
None
|
None |
similar_examples async ¶
similar_examples(
inputs: dict,
/,
*,
limit: int,
dataset_id: ID_TYPE,
filter: str | None = None,
**kwargs: Any,
) -> list[ExampleSearch]
检索其输入与当前输入最匹配的数据集示例。
注意:必须为数据集启用少样本索引。请参阅 `client.index_dataset()`。
| 参数 | 描述 |
|---|---|
inputs
|
用作搜索查询的输入。必须与数据集输入模式匹配。必须是 JSON 可序列化的。
类型: |
limit
|
要返回的最大示例数。
类型: |
dataset_id
|
要搜索的数据集的 ID。
类型: |
filter
|
应用于搜索结果的筛选字符串。使用与 `list_runs()` 中 `filter` 参数相同的语法。仅支持部分操作。默认为 None。
类型: |
kwargs
|
作为请求主体的一部分传递的额外关键字参数。
类型: |
| 返回 | 描述 |
|---|---|
list[ExampleSearch]
|
ExampleSearch 对象列表。 |
示例
.. code-block:: python
from langsmith import Client
client = Client()
await client.similar_examples(
{"question": "When would i use the runnable generator"},
limit=3,
dataset_id="...",
)
.. code-block:: pycon
[
ExampleSearch(
inputs={'question': 'How do I cache a Chat model? What caches can I use?'},
outputs={'answer': 'You can use LangChain\'s caching layer for Chat Models. This can save you money by reducing the number of API calls you make to the LLM provider, if you\'re often requesting the same completion multiple times, and speed up your application.\n\n```python\n\nfrom langchain.cache import InMemoryCache\nlangchain.llm_cache = InMemoryCache()\n\n# The first time, it is not yet in cache, so it should take longer\nllm.predict(\'Tell me a joke\')\n\n```\n\nYou can also use SQLite Cache which uses a SQLite database:\n\n```python\n rm .langchain.db\n\nfrom langchain.cache import SQLiteCache\nlangchain.llm_cache = SQLiteCache(database_path=".langchain.db")\n\n# The first time, it is not yet in cache, so it should take longer\nllm.predict(\'Tell me a joke\') \n```\n'},
metadata=None,
id=UUID('b2ddd1c4-dff6-49ae-8544-f48e39053398'),
dataset_id=UUID('01b6ce0f-bfb6-4f48-bbb8-f19272135d40')
),
ExampleSearch(
inputs={'question': "What's a runnable lambda?"},
outputs={'answer': "A runnable lambda is an object that implements LangChain's `Runnable` interface and runs a callbale (i.e., a function). Note the function must accept a single argument."},
metadata=None,
id=UUID('f94104a7-2434-4ba7-8293-6a283f4860b4'),
dataset_id=UUID('01b6ce0f-bfb6-4f48-bbb8-f19272135d40')
),
ExampleSearch(
inputs={'question': 'Show me how to use RecursiveURLLoader'},
outputs={'answer': 'The RecursiveURLLoader comes from the langchain.document_loaders.recursive_url_loader module. Here\'s an example of how to use it:\n\n```python\nfrom langchain.document_loaders.recursive_url_loader import RecursiveUrlLoader\n\n# Create an instance of RecursiveUrlLoader with the URL you want to load\nloader = RecursiveUrlLoader(url="https://example.com")\n\n# Load all child links from the URL page\nchild_links = loader.load()\n\n# Print the child links\nfor link in child_links:\n print(link)\n```\n\nMake sure to replace "https://example.com" with the actual URL you want to load. The load() method returns a list of child links found on the URL page. You can iterate over this list to access each child link.'},
metadata=None,
id=UUID('0308ea70-a803-4181-a37d-39e95f138f8c'),
dataset_id=UUID('01b6ce0f-bfb6-4f48-bbb8-f19272135d40')
),
]
like_prompt async ¶
unlike_prompt async ¶
list_prompts async ¶
list_prompts(
*,
limit: int = 100,
offset: int = 0,
is_public: bool | None = None,
is_archived: bool | None = False,
sort_field: PromptSortField = updated_at,
sort_direction: Literal["desc", "asc"] = "desc",
query: str | None = None,
) -> ListPromptsResponse
带分页地列出提示。
| 参数 | 描述 |
|---|---|
limit
|
返回的最大提示数。默认为 100。
类型: |
offset
|
跳过的提示数。默认为 0。
类型: |
is_public
|
按提示是否公开进行筛选。
类型: |
is_archived
|
按提示是否已归档进行筛选。
类型: |
sort_field
|
排序字段。默认为 "updated_at"。
类型: |
sort_direction
|
排序顺序。默认为 "desc"。
类型: |
query
|
通过搜索查询筛选提示。
类型: |
| 返回 | 描述 |
|---|---|
ListPromptsResponse
|
一个包含提示列表的响应对象。 |
ListPromptsResponse
|
提示列表。 |
get_prompt async ¶
create_prompt async ¶
create_prompt(
prompt_identifier: str,
*,
description: str | None = None,
readme: str | None = None,
tags: Sequence[str] | None = None,
is_public: bool = False,
) -> Prompt
创建一个新的提示。
不附加提示对象,只创建一个空的提示。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
提示的标识符。标识符应为 owner/name:hash、name:hash、owner/name 或 name 格式
类型: |
描述
|
提示的描述。
类型: |
readme
|
提示的自述文件。
类型: |
tags
|
提示的标签列表。 |
is_public
|
提示是否应公开。默认为 False。
类型: |
| 返回 | 描述 |
|---|---|
Prompt
|
已创建的提示对象。
类型: |
| 引发 | 描述 |
|---|---|
ValueError
|
如果当前租户不是所有者。 |
HTTPError
|
如果服务器请求失败。 |
create_commit async ¶
create_commit(
prompt_identifier: str, object: Any, *, parent_commit_hash: str | None = None
) -> str
为现有提示创建一个提交。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
提示的标识符。
类型: |
object
|
要提交的 LangChain 对象。
类型: |
parent_commit_hash
|
父提交的哈希值。默认为最新提交。
类型: |
| 返回 | 描述 |
|---|---|
str
|
提示提交的 URL。
类型: |
| 引发 | 描述 |
|---|---|
HTTPError
|
如果服务器请求失败。 |
ValueError
|
如果提示不存在。 |
update_prompt async ¶
update_prompt(
prompt_identifier: str,
*,
description: str | None = None,
readme: str | None = None,
tags: Sequence[str] | None = None,
is_public: bool | None = None,
is_archived: bool | None = None,
) -> dict[str, Any]
更新提示的元数据。
要更新提示的内容,请改用 push_prompt 或 create_commit。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
要更新的提示的标识符。
类型: |
描述
|
提示的新描述。
类型: |
readme
|
提示的新自述文件。
类型: |
tags
|
提示的新标签列表。 |
is_public
|
提示的新公开状态。
类型: |
is_archived
|
提示的新归档状态。
类型: |
| 返回 | 描述 |
|---|---|
dict[str, Any]
|
Dict[str, Any]:服务器返回的已更新的提示数据。 |
| 引发 | 描述 |
|---|---|
ValueError
|
如果 prompt_identifier 为空。 |
HTTPError
|
如果服务器请求失败。 |
delete_prompt async ¶
delete_prompt(prompt_identifier: str) -> None
删除一个提示。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
要删除的提示的标识符。
类型: |
| 返回 | 描述 |
|---|---|
bool
|
如果提示成功删除则为 True,否则为 False。
类型: |
| 引发 | 描述 |
|---|---|
ValueError
|
如果当前租户不是提示的所有者。 |
pull_prompt_commit async ¶
pull_prompt_commit(
prompt_identifier: str, *, include_model: bool | None = False
) -> PromptCommit
从 LangSmith API 拉取一个提示对象。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
提示的标识符。
类型: |
| 返回 | 描述 |
|---|---|
PromptCommit
|
提示对象。
类型: |
| 引发 | 描述 |
|---|---|
ValueError
|
如果找不到提示的任何提交。 |
list_prompt_commits async ¶
list_prompt_commits(
prompt_identifier: str,
*,
limit: int | None = None,
offset: int = 0,
include_model: bool = False,
) -> AsyncGenerator[ListedPromptCommit, None]
列出给定提示的所有提交。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
格式为 'owner/repo_name' 的提示标识符。
类型: |
limit
|
要返回的最大提交数。如果为 None,则返回所有提交。默认为 None。
TYPE: |
offset
|
在开始返回结果之前要跳过的提交数。默认为 0。
类型: |
include_model
|
是否在提交数据中包含模型信息。默认为 False。
类型: |
| YIELDS | 描述 |
|---|---|
AsyncGenerator[ListedPromptCommit, None]
|
每个提交的 ListedPromptCommit 对象。 |
注意
此方法使用分页来检索提交。如有必要,它将进行多次 API 调用以检索所有提交或达到指定的限制。
pull_prompt async ¶
push_prompt async ¶
push_prompt(
prompt_identifier: str,
*,
object: Any | None = None,
parent_commit_hash: str = "latest",
is_public: bool | None = None,
description: str | None = None,
readme: str | None = None,
tags: Sequence[str] | None = None,
) -> str
将一个提示推送到 LangSmith API。
可用于更新提示元数据或提示内容。
如果提示不存在,它将被创建。如果提示已存在,它将被更新。
| 参数 | 描述 |
|---|---|
prompt_identifier
|
提示的标识符。
类型: |
object
|
要推送的 LangChain 对象。
类型: |
parent_commit_hash
|
父提交的哈希值。默认为“latest”。
类型: |
is_public
|
提示是否应公开。如果为 None(默认),现有提示将维持当前的可见性状态。对于新提示,None 默认为私有。设置为 True 以公开,或设置为 False 以设为私有。
类型: |
描述
|
提示的描述。默认为空字符串。
类型: |
readme
|
提示的自述文件。默认为空字符串。
类型: |
tags
|
提示的标签列表。默认为空列表。 |
| 返回 | 描述 |
|---|---|
str
|
提示的 URL。
类型: |