telnyx-ai-inference-python
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->
<!-- 由Telnyx OpenAPI规范自动生成,请勿编辑。 -->
Telnyx Ai Inference - Python
Telnyx Ai Inference - Python
Installation
安装
bash
pip install telnyxbash
pip install telnyxSetup
配置
python
import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)All examples below assume is already initialized as shown above.
clientpython
import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # 这是默认配置,可省略
)以下所有示例均假设已按上述方式初始化完成。
clientList conversations
列出对话
Retrieve a list of all AI conversations configured by the user.
GET /ai/conversationspython
conversations = client.ai.conversations.list()
print(conversations.data)检索用户配置的所有AI对话列表。
GET /ai/conversationspython
conversations = client.ai.conversations.list()
print(conversations.data)Create a conversation
创建对话
Create a new AI Conversation.
POST /ai/conversationsOptional: (object), (string)
metadatanamepython
conversation = client.ai.conversations.create()
print(conversation.id)创建一个新的AI对话。
POST /ai/conversations可选参数:(对象)、(字符串)
metadatanamepython
conversation = client.ai.conversations.create()
print(conversation.id)Get Insight Template Groups
获取洞察模板组
Get all insight groups
GET /ai/conversations/insight-groupspython
page = client.ai.conversations.insight_groups.retrieve_insight_groups()
page = page.data[0]
print(page.id)获取所有洞察组
GET /ai/conversations/insight-groupspython
page = client.ai.conversations.insight_groups.retrieve_insight_groups()
page = page.data[0]
print(page.id)Create Insight Template Group
创建洞察模板组
Create a new insight group
POST /ai/conversations/insight-groupsnameOptional: (string), (string)
descriptionwebhookpython
insight_template_group_detail = client.ai.conversations.insight_groups.insight_groups(
name="name",
)
print(insight_template_group_detail.data)创建一个新的洞察组
POST /ai/conversations/insight-groupsname可选参数:(字符串)、(字符串)
descriptionwebhookpython
insight_template_group_detail = client.ai.conversations.insight_groups.insight_groups(
name="name",
)
print(insight_template_group_detail.data)Get Insight Template Group
获取指定洞察模板组
Get insight group by ID
GET /ai/conversations/insight-groups/{group_id}python
insight_template_group_detail = client.ai.conversations.insight_groups.retrieve(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_group_detail.data)通过ID获取洞察组
GET /ai/conversations/insight-groups/{group_id}python
insight_template_group_detail = client.ai.conversations.insight_groups.retrieve(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_group_detail.data)Update Insight Template Group
更新洞察模板组
Update an insight template group
PUT /ai/conversations/insight-groups/{group_id}Optional: (string), (string), (string)
descriptionnamewebhookpython
insight_template_group_detail = client.ai.conversations.insight_groups.update(
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_group_detail.data)更新洞察模板组信息
PUT /ai/conversations/insight-groups/{group_id}可选参数:(字符串)、(字符串)、(字符串)
descriptionnamewebhookpython
insight_template_group_detail = client.ai.conversations.insight_groups.update(
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_group_detail.data)Delete Insight Template Group
删除洞察模板组
Delete insight group by ID
DELETE /ai/conversations/insight-groups/{group_id}python
client.ai.conversations.insight_groups.delete(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)通过ID删除洞察组
DELETE /ai/conversations/insight-groups/{group_id}python
client.ai.conversations.insight_groups.delete(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)Assign Insight Template To Group
为组分配洞察模板
Assign an insight to a group
POST /ai/conversations/insight-groups/{group_id}/insights/{insight_id}/assignpython
client.ai.conversations.insight_groups.insights.assign(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)将洞察分配给指定组
POST /ai/conversations/insight-groups/{group_id}/insights/{insight_id}/assignpython
client.ai.conversations.insight_groups.insights.assign(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)Unassign Insight Template From Group
从组中移除洞察模板
Remove an insight from a group
DELETE /ai/conversations/insight-groups/{group_id}/insights/{insight_id}/unassignpython
client.ai.conversations.insight_groups.insights.delete_unassign(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)从组中移除指定洞察
DELETE /ai/conversations/insight-groups/{group_id}/insights/{insight_id}/unassignpython
client.ai.conversations.insight_groups.insights.delete_unassign(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
group_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)Get Insight Templates
获取洞察模板
Get all insights
GET /ai/conversations/insightspython
page = client.ai.conversations.insights.list()
page = page.data[0]
print(page.id)获取所有洞察模板
GET /ai/conversations/insightspython
page = client.ai.conversations.insights.list()
page = page.data[0]
print(page.id)Create Insight Template
创建洞察模板
Create a new insight
POST /ai/conversations/insightsinstructionsnameOptional: (object), (string)
json_schemawebhookpython
insight_template_detail = client.ai.conversations.insights.create(
instructions="instructions",
name="name",
)
print(insight_template_detail.data)创建一个新的洞察模板
POST /ai/conversations/insightsinstructionsname可选参数:(对象)、(字符串)
json_schemawebhookpython
insight_template_detail = client.ai.conversations.insights.create(
instructions="instructions",
name="name",
)
print(insight_template_detail.data)Get Insight Template
获取指定洞察模板
Get insight by ID
GET /ai/conversations/insights/{insight_id}python
insight_template_detail = client.ai.conversations.insights.retrieve(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_detail.data)通过ID获取洞察模板
GET /ai/conversations/insights/{insight_id}python
insight_template_detail = client.ai.conversations.insights.retrieve(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_detail.data)Update Insight Template
更新洞察模板
Update an insight template
PUT /ai/conversations/insights/{insight_id}Optional: (string), (object), (string), (string)
instructionsjson_schemanamewebhookpython
insight_template_detail = client.ai.conversations.insights.update(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_detail.data)更新洞察模板信息
PUT /ai/conversations/insights/{insight_id}可选参数:(字符串)、(对象)、(字符串)、(字符串)
instructionsjson_schemanamewebhookpython
insight_template_detail = client.ai.conversations.insights.update(
insight_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(insight_template_detail.data)Delete Insight Template
删除洞察模板
Delete insight by ID
DELETE /ai/conversations/insights/{insight_id}python
client.ai.conversations.insights.delete(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)通过ID删除洞察模板
DELETE /ai/conversations/insights/{insight_id}python
client.ai.conversations.insights.delete(
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)Get a conversation
获取指定对话
Retrieve a specific AI conversation by its ID.
GET /ai/conversations/{conversation_id}python
conversation = client.ai.conversations.retrieve(
"conversation_id",
)
print(conversation.data)通过ID检索特定的AI对话。
GET /ai/conversations/{conversation_id}python
conversation = client.ai.conversations.retrieve(
"conversation_id",
)
print(conversation.data)Update conversation metadata
更新对话元数据
Update metadata for a specific conversation.
PUT /ai/conversations/{conversation_id}Optional: (object)
metadatapython
conversation = client.ai.conversations.update(
conversation_id="conversation_id",
)
print(conversation.data)更新指定对话的元数据。
PUT /ai/conversations/{conversation_id}可选参数:(对象)
metadatapython
conversation = client.ai.conversations.update(
conversation_id="conversation_id",
)
print(conversation.data)Delete a conversation
删除对话
Delete a specific conversation by its ID.
DELETE /ai/conversations/{conversation_id}python
client.ai.conversations.delete(
"conversation_id",
)通过ID删除特定对话。
DELETE /ai/conversations/{conversation_id}python
client.ai.conversations.delete(
"conversation_id",
)Get insights for a conversation
获取对话的洞察信息
Retrieve insights for a specific conversation
GET /ai/conversations/{conversation_id}/conversations-insightspython
response = client.ai.conversations.retrieve_conversations_insights(
"conversation_id",
)
print(response.data)检索指定对话的洞察信息
GET /ai/conversations/{conversation_id}/conversations-insightspython
response = client.ai.conversations.retrieve_conversations_insights(
"conversation_id",
)
print(response.data)Create Message
创建消息
Add a new message to the conversation.
POST /ai/conversations/{conversation_id}/messageroleOptional: (string), (object), (string), (date-time), (string), (array[object]), (object)
contentmetadatanamesent_attool_call_idtool_callstool_choicepython
client.ai.conversations.add_message(
conversation_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
role="role",
)向对话中添加新消息。
POST /ai/conversations/{conversation_id}/messagerole可选参数:(字符串)、(对象)、(字符串)、(日期时间)、(字符串)、(对象数组)、(对象)
contentmetadatanamesent_attool_call_idtool_callstool_choicepython
client.ai.conversations.add_message(
conversation_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
role="role",
)Get conversation messages
获取对话消息
Retrieve messages for a specific conversation, including tool calls made by the assistant.
GET /ai/conversations/{conversation_id}/messagespython
messages = client.ai.conversations.messages.list(
"conversation_id",
)
print(messages.data)检索指定对话的消息,包括助手发起的工具调用。
GET /ai/conversations/{conversation_id}/messagespython
messages = client.ai.conversations.messages.list(
"conversation_id",
)
print(messages.data)Get Tasks by Status
按状态获取任务
Retrieve tasks for the user that are either , , , or based on the query string.
queuedprocessingfailedsuccesspartial_successGET /ai/embeddingspython
embeddings = client.ai.embeddings.list()
print(embeddings.data)根据查询字符串检索用户的任务,状态包括(排队中)、(处理中)、(失败)、(成功)或(部分成功)。
queuedprocessingfailedsuccesspartial_successGET /ai/embeddingspython
embeddings = client.ai.embeddings.list()
print(embeddings.data)Embed documents
嵌入文档
Perform embedding on a Telnyx Storage Bucket using an embedding model.
POST /ai/embeddingsbucket_nameOptional: (integer), (integer), (object), (object)
document_chunk_overlap_sizedocument_chunk_sizeembedding_modelloaderpython
embedding_response = client.ai.embeddings.create(
bucket_name="bucket_name",
)
print(embedding_response.data)使用嵌入模型对Telnyx存储桶中的文档执行嵌入操作。
POST /ai/embeddingsbucket_name可选参数:(整数)、(整数)、(对象)、(对象)
document_chunk_overlap_sizedocument_chunk_sizeembedding_modelloaderpython
embedding_response = client.ai.embeddings.create(
bucket_name="bucket_name",
)
print(embedding_response.data)List embedded buckets
列出已嵌入的存储桶
Get all embedding buckets for a user.
GET /ai/embeddings/bucketspython
buckets = client.ai.embeddings.buckets.list()
print(buckets.data)获取用户的所有嵌入存储桶。
GET /ai/embeddings/bucketspython
buckets = client.ai.embeddings.buckets.list()
print(buckets.data)Get file-level embedding statuses for a bucket
获取存储桶的文件级嵌入状态
Get all embedded files for a given user bucket, including their processing status.
GET /ai/embeddings/buckets/{bucket_name}python
bucket = client.ai.embeddings.buckets.retrieve(
"bucket_name",
)
print(bucket.data)获取指定用户存储桶的所有已嵌入文件,包括它们的处理状态。
GET /ai/embeddings/buckets/{bucket_name}python
bucket = client.ai.embeddings.buckets.retrieve(
"bucket_name",
)
print(bucket.data)Disable AI for an Embedded Bucket
禁用嵌入存储桶的AI功能
Deletes an entire bucket's embeddings and disables the bucket for AI-use, returning it to normal storage pricing.
DELETE /ai/embeddings/buckets/{bucket_name}python
client.ai.embeddings.buckets.delete(
"bucket_name",
)删除整个存储桶的嵌入数据,并禁用该存储桶的AI使用权限,使其恢复为普通存储定价。
DELETE /ai/embeddings/buckets/{bucket_name}python
client.ai.embeddings.buckets.delete(
"bucket_name",
)Search for documents
搜索文档
Perform a similarity search on a Telnyx Storage Bucket, returning the most similar document chunks to the query.
num_docsPOST /ai/embeddings/similarity-searchbucket_namequeryOptional: (integer)
num_of_docspython
response = client.ai.embeddings.similarity_search(
bucket_name="bucket_name",
query="query",
)
print(response.data)对Telnyx存储桶执行相似性搜索,返回与查询内容最相似的个文档片段。
num_docsPOST /ai/embeddings/similarity-searchbucket_namequery可选参数:(整数)
num_of_docspython
response = client.ai.embeddings.similarity_search(
bucket_name="bucket_name",
query="query",
)
print(response.data)Embed URL content
嵌入URL内容
Embed website content from a specified URL, including child pages up to 5 levels deep within the same domain.
POST /ai/embeddings/urlurlbucket_namepython
embedding_response = client.ai.embeddings.url(
bucket_name="bucket_name",
url="url",
)
print(embedding_response.data)嵌入指定URL的网站内容,包括同一域名下最多5级深度的子页面。
POST /ai/embeddings/urlurlbucket_namepython
embedding_response = client.ai.embeddings.url(
bucket_name="bucket_name",
url="url",
)
print(embedding_response.data)Get an embedding task's status
获取嵌入任务的状态
Check the status of a current embedding task.
GET /ai/embeddings/{task_id}python
embedding = client.ai.embeddings.retrieve(
"task_id",
)
print(embedding.data)检查当前嵌入任务的状态。
GET /ai/embeddings/{task_id}python
embedding = client.ai.embeddings.retrieve(
"task_id",
)
print(embedding.data)List all clusters
列出所有聚类
GET /ai/clusterspython
page = client.ai.clusters.list()
page = page.data[0]
print(page.task_id)GET /ai/clusterspython
page = client.ai.clusters.list()
page = page.data[0]
print(page.task_id)Compute new clusters
计算新聚类
Starts a background task to compute how the data in an embedded storage bucket is clustered.
POST /ai/clustersbucketOptional: (array[string]), (integer), (integer), (string)
filesmin_cluster_sizemin_subcluster_sizeprefixpython
response = client.ai.clusters.compute(
bucket="bucket",
)
print(response.data)启动后台任务,计算嵌入存储桶中数据的聚类方式。
POST /ai/clustersbucket可选参数:(字符串数组)、(整数)、(整数)、(字符串)
filesmin_cluster_sizemin_subcluster_sizeprefixpython
response = client.ai.clusters.compute(
bucket="bucket",
)
print(response.data)Fetch a cluster
获取指定聚类
GET /ai/clusters/{task_id}python
cluster = client.ai.clusters.retrieve(
task_id="task_id",
)
print(cluster.data)GET /ai/clusters/{task_id}python
cluster = client.ai.clusters.retrieve(
task_id="task_id",
)
print(cluster.data)Delete a cluster
删除聚类
DELETE /ai/clusters/{task_id}python
client.ai.clusters.delete(
"task_id",
)DELETE /ai/clusters/{task_id}python
client.ai.clusters.delete(
"task_id",
)Fetch a cluster visualization
获取聚类可视化图
GET /ai/clusters/{task_id}/graphpython
response = client.ai.clusters.fetch_graph(
task_id="task_id",
)
print(response)
content = response.read()
print(content)GET /ai/clusters/{task_id}/graphpython
response = client.ai.clusters.fetch_graph(
task_id="task_id",
)
print(response)
content = response.read()
print(content)Transcribe speech to text
语音转文字
Transcribe speech to text.
POST /ai/audio/transcriptionspython
response = client.ai.audio.transcribe(
model="distil-whisper/distil-large-v2",
)
print(response.text)将语音转录为文本。
POST /ai/audio/transcriptionspython
response = client.ai.audio.transcribe(
model="distil-whisper/distil-large-v2",
)
print(response.text)Create a chat completion
创建对话补全
Chat with a language model.
POST /ai/chat/completionsmessagesOptional: (string), (integer), (boolean), (number), (array[string]), (object), (string), (number), (boolean), (integer), (number), (string), (number), (number), (object), (boolean), (number), (enum), (array[object]), (integer), (number), (boolean)
api_key_refbest_ofearly_stoppingfrequency_penaltyguided_choiceguided_jsonguided_regexlength_penaltylogprobsmax_tokensmin_pmodelnpresence_penaltyresponse_formatstreamtemperaturetool_choicetoolstop_logprobstop_puse_beam_searchpython
response = client.ai.chat.create_completion(
messages=[{
"role": "system",
"content": "You are a friendly chatbot.",
}, {
"role": "user",
"content": "Hello, world!",
}],
)
print(response)与语言模型进行对话。
POST /ai/chat/completionsmessages可选参数:(字符串)、(整数)、(布尔值)、(数字)、(字符串数组)、(对象)、(字符串)、(数字)、(布尔值)、(整数)、(数字)、(字符串)、(数字)、(数字)、(对象)、(布尔值)、(数字)、(枚举)、(对象数组)、(整数)、(数字)、(布尔值)
api_key_refbest_ofearly_stoppingfrequency_penaltyguided_choiceguided_jsonguided_regexlength_penaltylogprobsmax_tokensmin_pmodelnpresence_penaltyresponse_formatstreamtemperaturetool_choicetoolstop_logprobstop_puse_beam_searchpython
response = client.ai.chat.create_completion(
messages=[{
"role": "system",
"content": "You are a friendly chatbot.",
}, {
"role": "user",
"content": "Hello, world!",
}],
)
print(response)List fine tuning jobs
列出微调任务
Retrieve a list of all fine tuning jobs created by the user.
GET /ai/fine_tuning/jobspython
jobs = client.ai.fine_tuning.jobs.list()
print(jobs.data)检索用户创建的所有微调任务列表。
GET /ai/fine_tuning/jobspython
jobs = client.ai.fine_tuning.jobs.list()
print(jobs.data)Create a fine tuning job
创建微调任务
Create a new fine tuning job.
POST /ai/fine_tuning/jobsmodeltraining_fileOptional: (object), (string)
hyperparameterssuffixpython
fine_tuning_job = client.ai.fine_tuning.jobs.create(
model="model",
training_file="training_file",
)
print(fine_tuning_job.id)创建一个新的微调任务。
POST /ai/fine_tuning/jobsmodeltraining_file可选参数:(对象)、(字符串)
hyperparameterssuffixpython
fine_tuning_job = client.ai.fine_tuning.jobs.create(
model="model",
training_file="training_file",
)
print(fine_tuning_job.id)Get a fine tuning job
获取指定微调任务
Retrieve a fine tuning job by .
job_idGET /ai/fine_tuning/jobs/{job_id}python
fine_tuning_job = client.ai.fine_tuning.jobs.retrieve(
"job_id",
)
print(fine_tuning_job.id)通过检索微调任务。
job_idGET /ai/fine_tuning/jobs/{job_id}python
fine_tuning_job = client.ai.fine_tuning.jobs.retrieve(
"job_id",
)
print(fine_tuning_job.id)Cancel a fine tuning job
取消微调任务
Cancel a fine tuning job.
POST /ai/fine_tuning/jobs/{job_id}/cancelpython
fine_tuning_job = client.ai.fine_tuning.jobs.cancel(
"job_id",
)
print(fine_tuning_job.id)取消指定微调任务。
POST /ai/fine_tuning/jobs/{job_id}/cancelpython
fine_tuning_job = client.ai.fine_tuning.jobs.cancel(
"job_id",
)
print(fine_tuning_job.id)Create embeddings
创建嵌入向量
Creates an embedding vector representing the input text.
POST /ai/openai/embeddingsinputmodelOptional: (integer), (enum), (string)
dimensionsencoding_formatuserpython
response = client.ai.openai.embeddings.create_embeddings(
input="The quick brown fox jumps over the lazy dog",
model="thenlper/gte-large",
)
print(response.data)创建代表输入文本的嵌入向量。
POST /ai/openai/embeddingsinputmodel可选参数:(整数)、(枚举)、(字符串)
dimensionsencoding_formatuserpython
response = client.ai.openai.embeddings.create_embeddings(
input="The quick brown fox jumps over the lazy dog",
model="thenlper/gte-large",
)
print(response.data)List embedding models
列出嵌入模型
Returns a list of available embedding models.
GET /ai/openai/embeddings/modelspython
response = client.ai.openai.embeddings.list_embedding_models()
print(response.data)返回可用的嵌入模型列表。
GET /ai/openai/embeddings/modelspython
response = client.ai.openai.embeddings.list_embedding_models()
print(response.data)Get available models
获取可用模型
This endpoint returns a list of Open Source and OpenAI models that are available for use.
GET /ai/modelspython
response = client.ai.retrieve_models()
print(response.data)此端点返回可使用的开源模型和OpenAI模型列表。
GET /ai/modelspython
response = client.ai.retrieve_models()
print(response.data)Summarize file content
总结文件内容
Generate a summary of a file's contents.
POST /ai/summarizebucketfilenameOptional: (string)
system_promptpython
response = client.ai.summarize(
bucket="bucket",
filename="filename",
)
print(response.data)生成文件内容的摘要。
POST /ai/summarizebucketfilename可选参数:(字符串)
system_promptpython
response = client.ai.summarize(
bucket="bucket",
filename="filename",
)
print(response.data)