Внешние модели в мозаичной модели ИИ
Внимание
Примеры кода в этой статье демонстрируют использование API CRUD общедоступной предварительной версии MLflow.
В этой статье описаны внешние модели в Службе модели ИИ Для Мозаики, включая поддерживаемые поставщики моделей и ограничения.
Что такое внешние модели?
Внешние модели — это сторонние модели, размещенные за пределами Databricks. Поддерживается службой моделей, внешние модели позволяют оптимизировать использование и управление различными поставщиками крупных языковых моделей (LLM), такими как OpenAI и Anthropic, в организации. Вы также можете использовать модель ИИ Мозаики, выступающую в качестве поставщика, для обслуживания пользовательских моделей, которые предлагают ограничения скорости для этих конечных точек. В рамках этой поддержки служба модели предлагает высокоуровневый интерфейс, упрощающий взаимодействие с этими службами, предоставляя единую конечную точку для обработки конкретных запросов, связанных с LLM.
Кроме того, поддержка Azure Databricks для внешних моделей обеспечивает централизованное управление учетными данными. Сохраняя ключи API в одном безопасном расположении, организации могут повысить уровень безопасности, свести к минимуму воздействие конфиденциальных ключей API во всей системе. Он также помогает предотвратить предоставление этих ключей в коде или безопасное управление ключами конечными пользователями.
См . руководство. Создание конечных точек внешней модели для запроса моделей OpenAI для пошагового руководства по созданию и запросу поддерживаемых моделей, обслуживаемых этими конечными точками с помощью пакета SDK для развертываний MLflow. Инструкции по использованию пользовательского интерфейса обслуживания и REST API см. в следующих руководствах.
Требования
- Ключ API или поля проверки подлинности для поставщика моделей.
- Рабочая область Databricks в поддерживаемых внешних моделях.
Поставщики моделей
Внешние модели в Службе моделей предназначены для поддержки различных поставщиков моделей. Поставщик представляет источник моделей машинного обучения, таких как OpenAI, Anthropic и т. д. Каждый поставщик имеет определенные характеристики и конфигурации, инкапсулированные в external_model
поле конфигурации внешней конечной точки модели.
Поддерживаются следующие поставщики:
- openai: для моделей, предлагаемых OpenAI и интеграции Azure для Azure OpenAI и Azure OpenAI с AAD.
- anthropic: Для моделей, предлагаемых Anthropic.
- cohere: Для моделей, предлагаемых Cohere.
- amazon-bedrock: Для моделей, предлагаемых Amazon Bedrock.
- google-cloud-vertex-ai: для моделей, предлагаемых Google Cloud Vertex AI.
- databricks-model-service: для конечных точек службы модели ИИ для мозаики с совместимыми схемами. См . раздел "Конфигурация конечной точки".
Чтобы запросить поддержку поставщика, не указанного здесь, обратитесь к группе учетной записи Databricks.
Поддерживаемые модели
Выбранная модель напрямую влияет на результаты ответов, полученных от вызовов API. Поэтому выберите модель, которая соответствует вашим требованиям к варианту использования. Например, для создания ответов на беседы можно выбрать модель чата. И наоборот, для создания внедрения текста можно выбрать модель внедрения.
В приведенной ниже таблице представлен неисчерпающий список поддерживаемых моделей и соответствующих типов конечных точек. Сопоставления моделей, перечисленные ниже, можно использовать в качестве полезного руководства при настройке конечной точки для всех недавно выпущенных типов моделей, так как они становятся доступными для данного поставщика. Клиенты отвечают за обеспечение соответствия применимым лицензиям модели.
Примечание.
При быстром развитии LLM нет никакой гарантии, что этот список находится в актуальном состоянии в любое время.
Поставщик моделей | llm/v1/completions | llm/v1/chat | llm/v1/embeddings |
---|---|---|---|
OpenAI** | * gpt-3.5-turbo-instruct * babbage-002 * davinci-002 |
* gpt-3.5-turbo * gpt-4 * gpt-4o * gpt-4o-2024-05-13 * gpt-4o-mini * gpt-3.5-turbo-0125 * gpt-3.5-turbo-1106 * gpt-4-0125-preview * gpt-4-turbo-preview * gpt-4-1106-preview * gpt-4-vision-preview * gpt-4-1106-vision-preview |
* text-embedding-ada-002 * text-embedding-3-large * text-embedding-3-small |
Azure OpenAI** | * text-davinci-003 * gpt-35-turbo-instruct |
* gpt-35-turbo * gpt-35-turbo-16k * gpt-4 * gpt-4-32k * gpt-4o |
* text-embedding-ada-002 * text-embedding-3-large * text-embedding-3-small |
Anthropic | * claude-1 * claude-1.3-100k * claude-2 * claude-2.1 * claude-2.0 * claude-instant-1.2 |
* claude-3-5-sonnet-20240620 * claude-3-haiku-20240307 * claude-3-opus-20240229 * claude-3-sonnet-20240229 * claude-2.1 * claude-2.0 * claude-instant-1.2 |
|
Согласовываться** | *команда * command-light |
* command-r-plus * command-r *команда * команда-light-nightly * command-light * команда ночью |
* embed-english-v2.0 * embed-многоязычный-v2.0 * embed-english-light-v2.0 * embed-english-v3.0 * embed-english-light-v3.0 * embed-многоязычный-v3.0 * внедрить многоязычный свет-v3.0 |
Мозаичная модель ИИ | Конечная точка обслуживания Databricks | Конечная точка обслуживания Databricks | Конечная точка обслуживания Databricks |
Amazon Bedrock | Anthropic: * claude-instant-v1 * claude-v2 Согласовываться: * command-text-v14 * command-light-text-v14 Лаборатории AI21: * j2-grande-instruct * j2-jumbo-instruct * j2-mid * j2-mid-v1 * j2-ultra * j2-ultra-v1 |
Anthropic: * claude-v2 * claude-v2:1 * claude-3-sonnet-20240229-v1:0 * claude-3-5-sonnet-20240620-v1:0 Согласовываться: * command-r-plus-v1:0 * command-r-v1:0 * command-text-v14 * command-light-text-v14 |
Амазонка: * titan-embed-text-v1 * titan-embed-g1-text-02 Согласовываться: * embed-english-v3 * внедрение многоязычных версий 3 |
Лаборатории AI21† | * j2-mid * j2-light * j2-ultra |
||
Google Cloud Vertex AI | text-bison | * chat-bison * gemini-pro |
textembedding-gecko |
**
Поставщик моделей поддерживает точно настроенные модели завершения и чата. Чтобы запросить настраиваемую модель, заполните name
поле external model
конфигурации именем настраиваемой модели.
поставщик моделей † поддерживает пользовательские модели завершения.
Использование моделей, обслуживающихся в конечных точках обслуживания модели ИИ Мозаики
Для типов конечных llm/v1/embeddings
llm/v1/chat
точек и типов конечных точек для типов конечных точек и типов конечных точек поддерживается llm/v1/completions
мозаичная модель ИИ, обслуживающая как поставщик. Эти конечные точки должны принимать стандартные параметры запроса, помеченные как обязательные, в то время как другие параметры могут игнорироваться в зависимости от того, поддерживает ли конечная точка службы модели ИИ Мозаики.
Дополнительные сведения о стандартных параметрах запроса см . в статье POST /service-endpoints/{name}/invocations в справочнике по API.
Эти конечные точки должны создавать ответы в следующем формате OpenAI.
Для задач завершения:
{
"id": "123", # Not Required
"model": "test_databricks_model",
"choices": [
{
"text": "Hello World!",
"index": 0,
"logprobs": null, # Not Required
"finish_reason": "length" # Not Required
}
],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
Для задач чата:
{
"id": "123", # Not Required
"model": "test_chat_model",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "\n\nHello there, how may I assist you today?",
},
"finish_reason": "stop"
},
{
"index": 1,
"message": {
"role": "human",
"content": "\n\nWhat is the weather in San Francisco?",
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
Для задач внедрения:
{
"data": [
{
"embedding": [
0.0023064255,
-0.009327292,
.... # (1536 floats total for ada-002)
-0.0028842222,
],
"index": 0
},
{
"embedding": [
0.0023064255,
-0.009327292,
.... #(1536 floats total for ada-002)
-0.0028842222,
],
"index": 0
}
],
"model": "test_embedding_model",
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
Конфигурация конечной точки
Для обслуживания и запроса внешних моделей необходимо настроить конечную точку обслуживания. См. статью "Создание внешней конечной точки обслуживания модели"
Для внешней конечной точки обслуживания модели необходимо включить external_model
поле и его параметры в served_entities
раздел конфигурации конечной точки. Если вы настраиваете несколько внешних моделей в конечной точке обслуживания, необходимо указать traffic_config
процент маршрутизации трафика для каждой внешней модели.
Поле external_model
определяет модель, в которую эта конечная точка пересылает запросы. При указании модели важно, чтобы поставщик поддерживал запрашиваемую модель. Например, как поставщик поддерживает такие text-embedding-ada-002
модели, openai
как другие поставщики, но другие поставщики не могут. Если модель не поддерживается поставщиком, Databricks возвращает ошибку HTTP 4xx при попытке маршрутизировать запросы к этой модели.
В приведенной ниже таблице перечислены external_model
параметры поля. Дополнительные сведения о параметрах конфигурации конечной точки см. в разделе POST /api/2.0/service-endpoints .
Параметр | Descriptions |
---|---|
name |
Имя используемой модели. Например, gpt-3.5-turbo для модели OpenAI GPT-3.5-Turbo . |
provider |
Указывает имя поставщика для этой модели. Это строковое значение должно соответствовать поддерживаемому поставщику внешней модели. Например, openai для моделей OpenAI GPT-3.5 . |
task |
Задача соответствует типу требуемого взаимодействия языковой модели. Поддерживаемые задачи: llm/v1/completions, llm/v1/chat, llm/v1/embeddings. |
<provider>_config |
Содержит дополнительные сведения о конфигурации, необходимые для модели. Это включает указание базового URL-адреса API и ключа API. См. статью "Настройка поставщика для конечной точки". |
Ниже приведен пример создания внешней конечной точки модели с помощью create_endpoint()
API. В этом примере запрос, отправленный в конечную точку завершения, пересылается в модель, предоставленную claude-2
anthropic
.
import mlflow.deployments
client = mlflow.deployments.get_deploy_client("databricks")
client.create_endpoint(
name="anthropic-completions-endpoint",
config={
"served_entities": [
{
"name": "test",
"external_model": {
"name": "claude-2",
"provider": "anthropic",
"task": "llm/v1/completions",
"anthropic_config": {
"anthropic_api_key": "{{secrets/my_anthropic_secret_scope/anthropic_api_key}}"
}
}
}
]
}
)
Обслуживание нескольких внешних моделей в конечной точке
Вы также можете настроить несколько внешних моделей в конечной точке обслуживания, если все они имеют одинаковый тип задачи, и каждая модель имеет уникальный name
. В приведенном ниже примере создается конечная точка обслуживания, которая направляет 50% трафика gpt-4
, предоставляемого OpenAI, и оставшуюся 50% для claude-3-opus-20240229
предоставления anthropic.
import mlflow.deployments
client = mlflow.deployments.get_deploy_client("databricks")
client.create_endpoint(
name="mix-chat-endpoint",
config={
"served_entities": [
{
"name": "served_model_name_1",
"external_model": {
"name": "gpt-4",
"provider": "openai",
"task": "llm/v1/chat",
"openai_config": {
"openai_api_key": "{{secrets/my_openai_secret_scope/openai_api_key}}"
}
}
},
{
"name": "served_model_name_2",
"external_model": {
"name": "claude-3-opus-20240229",
"provider": "anthropic",
"task": "llm/v1/chat",
"anthropic_config": {
"anthropic_api_key": "{{secrets/my_anthropic_secret_scope/anthropic_api_key}}"
}
}
}
],
"traffic_config": {
"routes": [
{"served_model_name": "served_model_name_1", "traffic_percentage": 50},
{"served_model_name": "served_model_name_2", "traffic_percentage": 50}
]
},
}
)
Настройка поставщика для конечной точки
При создании конечной точки необходимо указать необходимые конфигурации для указанного поставщика моделей. В следующих разделах приведены общие сведения о доступных параметрах конфигурации конечной точки для каждого поставщика модели.
Примечание.
Databricks шифрует и безопасно сохраняет предоставленные учетные данные для каждого поставщика моделей. Эти учетные данные автоматически удаляются при удалении связанных конечных точек.
OpenAI
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
openai_api_key |
Справочник по секрету Azure Databricks для ключа API OpenAI с помощью службы OpenAI. Если вы предпочитаете вставлять ключ API напрямую, см. раздел openai_api_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: openai_api_key или openai_api_key_plaintext . |
|
openai_api_key_plaintext |
Ключ API OpenAI с помощью службы OpenAI, предоставленной в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел openai_api_key . |
Необходимо предоставить ключ API с помощью одного из следующих полей: openai_api_key или openai_api_key_plaintext предоставить его. |
|
openai_api_type |
Необязательное поле для указания типа используемого API OpenAI. | No | openai |
openai_api_base |
Базовый URL-адрес API OpenAI. | No | https://api.openai.com/v1 |
openai_api_version |
Необязательное поле для указания версии API OpenAI. | No | |
openai_organization |
Необязательное поле для указания организации в OpenAI. | No |
Согласовываться
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
cohere_api_key |
Справочник по секрету Azure Databricks для ключа API Cohere. Если вы предпочитаете вставлять ключ API напрямую, см. раздел cohere_api_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: cohere_api_key или cohere_api_key_plaintext . |
|
cohere_api_key_plaintext |
Ключ API Cohere, предоставленный в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел cohere_api_key . |
Необходимо указать ключ API, используя одно из следующих полей: cohere_api_key или cohere_api_key_plaintext . |
|
cohere_api_base |
Базовый URL-адрес службы Cohere. | No |
Anthropic
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
anthropic_api_key |
Справочник по секрету Azure Databricks для ключа API anthropic. Если вы предпочитаете вставлять ключ API напрямую, см. раздел anthropic_api_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: anthropic_api_key или anthropic_api_key_plaintext . |
|
anthropic_api_key_plaintext |
Ключ API anthropic, предоставленный в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел anthropic_api_key . |
Необходимо указать ключ API, используя одно из следующих полей: anthropic_api_key или anthropic_api_key_plaintext . |
Azure OpenAI
Azure OpenAI имеет различные функции по сравнению с прямой службой OpenAI. Общие сведения см . в документации по сравнению.
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
openai_api_key |
Справочник по секрету Azure Databricks для ключа API OpenAI с помощью службы Azure. Если вы предпочитаете вставлять ключ API напрямую, см. раздел openai_api_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: openai_api_key или openai_api_key_plaintext . |
|
openai_api_key_plaintext |
Ключ API OpenAI с помощью службы Azure, предоставленной в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел openai_api_key . |
Необходимо указать ключ API, используя одно из следующих полей: openai_api_key или openai_api_key_plaintext . |
|
openai_api_type |
Используется azure для проверки маркера доступа. |
Да | |
openai_api_base |
Базовый URL-адрес для службы API OpenAI Azure, предоставляемой Azure. | Да | |
openai_api_version |
Версия службы Azure OpenAI, используемая датой. | Да | |
openai_deployment_name |
Имя ресурса развертывания для службы Azure OpenAI. | Да | |
openai_organization |
Необязательное поле для указания организации в OpenAI. | No |
Если вы используете Azure OpenAI с идентификатором Microsoft Entra, используйте следующие параметры в конфигурации конечной точки.
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
microsoft_entra_tenant_id |
Идентификатор клиента для проверки подлинности Идентификатора Microsoft Entra. | Да | |
microsoft_entra_client_id |
Идентификатор клиента для проверки подлинности Идентификатора Microsoft Entra. | Да | |
microsoft_entra_client_secret |
Ссылка на секретный ключ Azure Databricks для секрета клиента, используемого для проверки подлинности идентификатора Microsoft Entra. Если вы предпочитаете вставить секрет клиента напрямую, см. раздел microsoft_entra_client_secret_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: microsoft_entra_client_secret или microsoft_entra_client_secret_plaintext . |
|
microsoft_entra_client_secret_plaintext |
Секрет клиента, используемый для проверки подлинности идентификатора Microsoft Entra, предоставленный в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел microsoft_entra_client_secret . |
Необходимо указать ключ API, используя одно из следующих полей: microsoft_entra_client_secret или microsoft_entra_client_secret_plaintext . |
|
openai_api_type |
Используется azuread для проверки подлинности с помощью идентификатора Microsoft Entra. |
Да | |
openai_api_base |
Базовый URL-адрес для службы API OpenAI Azure, предоставляемой Azure. | Да | |
openai_api_version |
Версия службы Azure OpenAI, используемая датой. | Да | |
openai_deployment_name |
Имя ресурса развертывания для службы Azure OpenAI. | Да | |
openai_organization |
Необязательное поле для указания организации в OpenAI. | No |
В следующем примере показано, как создать конечную точку с помощью Azure OpenAI:
client.create_endpoint(
name="openai-chat-endpoint",
config={
"served_entities": [{
"external_model": {
"name": "gpt-3.5-turbo",
"provider": "openai",
"task": "llm/v1/chat",
"openai_config": {
"openai_api_type": "azure",
"openai_api_key": "{{secrets/my_openai_secret_scope/openai_api_key}}",
"openai_api_base": "https://my-azure-openai-endpoint.openai.azure.com",
"openai_deployment_name": "my-gpt-35-turbo-deployment",
"openai_api_version": "2023-05-15"
}
}
}]
}
)
Google Cloud Vertex AI
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
private_key |
Справочник по секретному ключу Azure Databricks для закрытого ключа для учетной записи службы, которая имеет доступ к службе Google Cloud Vertex AI. Ознакомьтесь с рекомендациями по управлению ключами учетной записи службы. Если вы предпочитаете вставлять ключ API напрямую, см. раздел private_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: private_key или private_key_plaintext . |
|
private_key_plaintext |
Закрытый ключ для учетной записи службы, которая имеет доступ к службе Google Cloud Vertex AI, предоставленной в виде открытого секрета. Ознакомьтесь с рекомендациями по управлению ключами учетной записи службы. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел private_key . |
Необходимо указать ключ API, используя одно из следующих полей: private_key или private_key_plaintext . |
|
region |
Это регион службы ИИ Google Cloud Vertex. Дополнительные сведения см . в поддерживаемых регионах . Некоторые модели доступны только в определенных регионах. | Да | |
project_id |
Это идентификатор проекта Google Cloud, с которым связана учетная запись службы. | Да |
Amazon Bedrock
Чтобы использовать Amazon Bedrock в качестве внешнего поставщика моделей, клиентам необходимо убедиться, что Bedrock включен в указанном регионе AWS, а указанная пара ключей AWS имеет соответствующие разрешения для взаимодействия со службами Bedrock. Дополнительные сведения см. в разделе "Управление удостоверениями и доступом AWS".
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
aws_region |
Используемый регион AWS. Бедроук должен быть включен там. | Да | |
aws_access_key_id |
Справочник по секретному ключу Azure Databricks для идентификатора ключа доступа AWS с разрешениями на взаимодействие со службами Bedrock. Если вы предпочитаете вставлять ключ API напрямую, см. раздел aws_access_key_id_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: aws_access_key_id или aws_access_key_id_plaintext . |
|
aws_access_key_id_plaintext |
Идентификатор ключа доступа AWS с разрешениями на взаимодействие со службами Bedrock, предоставляемыми в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел aws_access_key_id . |
Необходимо указать ключ API, используя одно из следующих полей: aws_access_key_id или aws_access_key_id_plaintext . |
|
aws_secret_access_key |
Справочник по секрету Azure Databricks для ключа секретного доступа AWS, связанного с идентификатором ключа доступа, с разрешениями на взаимодействие со службами Bedrock. Если вы предпочитаете вставлять ключ API напрямую, см. раздел aws_secret_access_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: aws_secret_access_key или aws_secret_access_key_plaintext . |
|
aws_secret_access_key_plaintext |
Ключ секретного доступа AWS, связанный с идентификатором ключа доступа, с разрешениями на взаимодействие со службами Bedrock, предоставляемыми в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел aws_secret_access_key . |
Необходимо указать ключ API, используя одно из следующих полей: aws_secret_access_key или aws_secret_access_key_plaintext . |
|
bedrock_provider |
Базовый поставщик в Amazon Bedrock. Поддерживаемые значения (без учета регистра) включают: Anthropic, Cohere, AI21Labs, Amazon | Да |
В следующем примере показано, как создать конечную точку с помощью Amazon Bedrock.
client.create_endpoint(
name="bedrock-anthropic-completions-endpoint",
config={
"served_entities": [
{
"external_model": {
"name": "claude-v2",
"provider": "amazon-bedrock",
"task": "llm/v1/completions",
"amazon_bedrock_config": {
"aws_region": "<YOUR_AWS_REGION>",
"aws_access_key_id": "{{secrets/my_amazon_bedrock_secret_scope/aws_access_key_id}}",
"aws_secret_access_key": "{{secrets/my_amazon_bedrock_secret_scope/aws_secret_access_key}}",
"bedrock_provider": "anthropic",
},
}
}
]
},
)
Если возникли проблемы с разрешениями AWS, Databricks рекомендует проверить учетные данные непосредственно с помощью API Amazon Bedrock.
Лаборатории AI21
Параметр конфигурации | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
ai21labs_api_key |
Справочник по секрету Azure Databricks для ключа API Лабораторий AI21. Если вы предпочитаете вставлять ключ API напрямую, см. раздел ai21labs_api_key_plaintext . |
Необходимо указать ключ API, используя одно из следующих полей: ai21labs_api_key или ai21labs_api_key_plaintext . |
|
ai21labs_api_key_plaintext |
Ключ API Лабораторий AI21, предоставленный в виде строки открытого текста. Если вы предпочитаете ссылаться на ключ с помощью секретов Azure Databricks, см. раздел ai21labs_api_key . |
Необходимо указать ключ API, используя одно из следующих полей: ai21labs_api_key или ai21labs_api_key_plaintext . |
Запрос конечной точки внешней модели
После создания внешней конечной точки модели он готов получать трафик от пользователей.
Запросы оценки можно отправлять в конечную точку с помощью клиента OpenAI, REST API или пакета SDK для развертываний MLflow.
- См. стандартные параметры запроса оценки в POST /service-endpoints/{name}/invocations.
- Модели базы запросов и внешние модели
В следующем примере выполняется claude-2
запрос модели завершения, размещенной anthropic, с помощью клиента OpenAI. Чтобы использовать клиент OpenAI, заполните model
поле именем конечной точки обслуживания модели, в которой размещена модель, которую требуется запросить.
В этом примере используется ранее созданная конечная точка, anthropic-completions-endpoint
настроенная для доступа к внешним моделям из поставщика модели Anthropic. Узнайте, как создавать внешние конечные точки модели.
Ознакомьтесь с поддерживаемыми моделями для дополнительных моделей, которые можно запрашивать и их поставщиками.
import os
import openai
from openai import OpenAI
client = OpenAI(
api_key="dapi-your-databricks-token",
base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)
completion = client.completions.create(
model="anthropic-completions-endpoint",
prompt="what is databricks",
temperature=1.0
)
print(completion)
Ожидаемый формат выходных ответов:
{
"id": "123", # Not Required
"model": "anthropic-completions-endpoint",
"choices": [
{
"text": "Hello World!",
"index": 0,
"logprobs": null, # Not Required
"finish_reason": "length" # Not Required
}
],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
Дополнительные параметры запроса
Вы можете передать любые дополнительные параметры, поддерживаемые поставщиком конечной точки в рамках запроса.
Например:
logit_bias
(поддерживается OpenAI, Cohere).top_k
(поддерживается Anthropic, Cohere).frequency_penalty
(поддерживается OpenAI, Cohere).presence_penalty
(поддерживается OpenAI, Cohere).stream
(поддерживается OpenAI, Anthropic, Cohere, Amazon Bedrock for Anthropic). Это доступно только для запросов чата и завершения.
Ограничения
В зависимости от выбранной внешней модели конфигурация может привести к обработке данных за пределами региона, в котором были получены данные. См . ограничения и регионы обслуживания моделей.
Если вы решили настроить несколько внешних моделей в конечной точке обслуживания, все внешние модели должны иметь один и тот же тип задачи, и каждая модель должна быть уникальной name
. В одной конечной точке обслуживания нельзя использовать как внешние модели, так и не внешние модели.