Documento de interfaz OpenAI-API (versión en chino)

Documento de interfaz OpenAI-API (versión en chino)

OpenAI-API-Versión china

1.  Introducción  _

Si desea usar nuestra API, puede interactuar con la API desde cualquier idioma a través de  solicitudes HTTP , o usar nuestros enlaces oficiales de Python, la biblioteca oficial de Node.jsuna biblioteca mantenida por la comunidad . 

Para instalar los enlaces oficiales de Python, ejecute el siguiente comando:

 
 

pitón

copiar codigo

pip install openai

Para instalar la biblioteca oficial de Node.js , ejecute el siguiente comando en el directorio de su proyecto Node.js:

 
 

js

copiar codigo

npm install openai

2.  Autenticación  _

1. OpenAI-API-CLAVE

Las API de OpenAI  usan claves de API para la autenticación. Visite la página de su  clave de API  para recuperar la clave de API que utilizó en su solicitud.

¡Recuerde, su clave API es confidencial!  No lo comparta con otros ni lo exponga en ningún código del lado del cliente (navegador, aplicación). Las solicitudes de producción deben enrutarse a través de su propio servidor back-end, donde sus claves API se pueden cargar de forma segura desde variables de entorno o servicios de administración de claves.

Todas las solicitudes de API deben  Authorization incluir su clave de API en un encabezado HTTP como este:

 
 

http

copiar codigo

# 注意Bearer OPENAI_API_KEY,Bearer的后面是有一个空格的 Authorization: Bearer OPENAI_API_KEY

2. Organización OpenAI

Organización solicitante Organización solicitante

Para los usuarios que pertenecen a varias organizaciones, puede pasar un   encabezado que especifique qué organizaciones usar para las solicitudes de API. El uso de estas solicitudes de API se descontará de la cuota de suscripción de la organización especificada.

Ejemplo  de comando curl  :

 
 

http

copiar codigo

curl https://api.openai.com/v1/models \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "OpenAI-Organization: org-gth0C8mT2wnKealyCkSRrpQk"

Ejemplo usando  el paquete openai Python  :

 
 

pitón

copiar codigo

import os import openai openai.organization = "org-gth0C8mT2wnKealyCkSRrpQk" openai.api_key = os.getenv("OPENAI_API_KEY") openai.Model.list()

 Ejemplo usando  el paquete openai Node.js :

 
 

js

copiar codigo

import { Configuration, OpenAIApi } from "openai"; const configuration = new Configuration({ organization: "org-gth0C8mT2wnKealyCkSRrpQk", apiKey: process.env.OPENAI_API_KEY, }); const openai = new OpenAIApi(configuration); const response = await openai.listEngines();

El ID de la organización se puede  encontrar en la  página  Configuración de la organización

3.   Realización de solicitudes

Puede pegar el siguiente comando en su terminal para ejecutar su primera solicitud de API. Asegúrate de  reemplazar $OPENAI_API_KEY  con tu  clave de API .

 
 

http

copiar codigo

curl https://api.openai.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Say this is a test!"}], "temperature": 0.7 }'

Esta solicitud consulta  gpt-3.5-turbo模型para completar el texto que comienza con el mensaje "Diga que esto es una prueba". Deberías recibir una respuesta similar a:

 
 

json

copiar codigo

{ "id":"chatcmpl-abc123", "object":"chat.completion", "created":1677858242, "model":"gpt-3.5-turbo-0301", "usage":{ "prompt_tokens":13, "completion_tokens":7, "total_tokens":20 }, "choices":[ { "message":{ "role":"assistant", "content":"\n\nThis is a test!" }, "finish_reason":"stop", "index":0 } ] }

Ahora ha generado su primera finalización de chat. Podemos ver  finish_reason que sí  stop, lo que significa que la API devolvió una finalización completa de la generación del modelo. En la solicitud anterior, solo generamos un mensaje, pero puede configurar  n el parámetro para generar la opción de mensajes múltiples. En este ejemplo, gpt-3.5-turbo se utiliza para una  tarea de finalización de texto más tradicional . El modelo también está   optimizado para aplicaciones de chat .

Cuatro  Modelos  modelo

Enumera y describe los diversos modelos disponibles en la API. Puede consultar  la documentación del modelo  para conocer los modelos disponibles y las diferencias entre ellos.

1.  Listar modelos  listar modelos

 
 

http

copiar codigo

GET https://api.openai.com/v1/models

Enumera los modelos disponibles actualmente y proporciona información básica sobre cada uno, como el propietario y la disponibilidad.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/models \ -H "Authorization: Bearer $OPENAI_API_KEY"

respuesta:

 
 

json

copiar codigo

{ "data": [ { "id": "model-id-0", "object": "model", "owned_by": "organization-owner", "permission": [...] }, { "id": "model-id-1", "object": "model", "owned_by": "organization-owner", "permission": [...] }, { "id": "model-id-2", "object": "model", "owned_by": "openai", "permission": [...] }, ], "object": "list" }

2.  Recuperar  modelo modelo de recuperación

 
 

http

copiar codigo

GET https://api.openai.com/v1/models/{model}

Recupera una instancia de modelo y proporciona información básica sobre el modelo, como el propietario y los permisos.

donde, model es un tipo de cadena requerido , el ID del modelo utilizado para esta solicitud .

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/models/text-davinci-003 \ -H "Authorization: Bearer $OPENAI_API_KEY"

respuesta:

 
 

json

copiar codigo

{ "id": "text-davinci-003", "object": "model", "owned_by": "openai", "permission": [...] }

Cinco  Terminaciones  completadas

Dada una pista, el modelo devolverá una o más finalizaciones previstas y también puede devolver la probabilidad de una ficha alternativa en cada posición.

1.  Crear finalización

 
 

http

copiar codigo

POST https://api.openai.com/v1/completions

Creado para el aviso y los argumentos proporcionados.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "text-davinci-003", "prompt": "Say this is a test", "max_tokens": 7, "temperature": 0 }'

respuesta:

 
 

json

copiar codigo

{ "id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7", "object": "text_completion", "created": 1589478378, "model": "text-davinci-003", "choices": [ { "text": "\n\nThis is indeed a test", "index": 0, "logprobs": null, "finish_reason": "length" } ], "usage": { "prompt_tokens": 5, "completion_tokens": 7, "total_tokens": 12 } }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • model (cadena, requerido)

El ID del modelo a utilizar. Puede usar  la API de modelos de lista  (GET  api.openai.com/v1/models ) para ver todos los modelos disponibles o ver  la Descripción general de los modelos  para ver sus descripciones.

  • prompt (cadena o matriz, 选填, predeterminado en <|endoftext|>)

Sugerencias para generar finalizaciones, codificadas como cadenas, matrices de cadenas, matrices de tokens o matrices de matrices de tokens.

Tenga en cuenta que |endoftext| es el separador de documentos que el modelo ve durante el entrenamiento, por lo que si no se especifica ninguna sugerencia, el modelo generará como si fuera el principio de un nuevo documento.

  • suffix (cadena, 选填, valor predeterminado nulo)

El sufijo después del texto insertado está hecho.

  • max_tokens (entero, 选填, el valor predeterminado es 16)

El número máximo de tokens para generar al finalizar   .

El  max_tokens recuento de tokens de una sugerencia no puede exceder la longitud del contexto del modelo. La mayoría de los modelos tienen una longitud de contexto de 2048 tokens (excepto el último modelo, que admite 4096)

  • temperature (número, opcional, por defecto es 1)

Qué temperatura de muestreo usar,  entre 0 y 2 .

Valores más altos como 0.8 harán que la salida sea más aleatoria, mientras que valores más bajos como 0.2 la harán más enfocada y determinista.

Por lo general, recomendamos modificar este ( temperature ) para  top_p pero ambos no pueden existir al mismo tiempo, elija uno de los dos.

  • top_p (número, opcional, por defecto es 1)

Una alternativa al muestreo de temperatura se denomina muestreo central, donde el modelo tiene en cuenta los resultados etiquetados con calidad de probabilidad top_p. Por lo tanto, 0.1 significa que solo se consideran los marcadores con la masa de probabilidad del 10% superior.

Generalmente recomendamos modificar este ( top_p ) o  temperature, pero no ambos.

  • n (entero, 选填, el valor predeterminado es 1)

prompt El número de finalizaciones para cada  compilación.

Nota: dado que este parámetro genera muchas finalizaciones, puede consumir rápidamente su cuota de token. Úselo con cuidado y asegúrese de configurar  max_tokens y  stop de manera razonable.

  • stream (booleano, 选填, el valor predeterminado es falso)

Si devolver un flujo de progreso parcial. Si se establece, los tokens se enviarán como eventos de inserción del servidor de datos a medida que estén disponibles, y los flujos  data: [DONE] se terminarán a través de mensajes.

  • logprobs (entero, 选填, predeterminado en nulo)

En  logprobs la lista devuelta de marcadores más probables, incluya el marcador seleccionado y la probabilidad logarítmica correspondiente.

Por ejemplo, si  logprobs es 5, la API devolverá una lista de las 5 etiquetas más probables. La API siempre devuelve la probabilidad de registro del marcador muestreado, por lo que puede haber tantos como  logprobs+1 elementos en la respuesta.

logprobs El valor máximo es 5. Si necesita más, comuníquese con nosotros a través de nuestro  centro de ayuda  y describa su caso de uso.

  • echo (booleano, 选填, el valor predeterminado es falso)

Hacer eco de la indicación además de la finalización

  • stop (cadena o matriz, 选填, valor predeterminado en nulo)

Genere hasta 4 secuencias, la API dejará de generar más tokens. El texto devuelto no contiene secuencias de parada.

  • presence_penalty (número, opcional, predeterminado a 0)

Un número entre  -2.0 y 2.0 . Los valores positivos penalizan los nuevos tokens en función de si han aparecido en el texto hasta el momento, lo que aumenta la probabilidad de que el modelo hable sobre nuevos temas.

Ver más sobre la frecuencia y las sanciones estatales

  • frequency_penalty (número, opcional, predeterminado a 0)

Un número entre -2.0 y 2.0. Un valor positivo penaliza los tokens nuevos en función de su frecuencia existente en el texto, lo que reduce la probabilidad de que el modelo repita la misma fila.

Ver más sobre penalizaciones por frecuencia y presencia

  • best_of (entero, 选填, el valor predeterminado es 1)

La generación se realiza en el lado del servidor  best_of y se devuelve el "mejor" (el que tiene la probabilidad de registro más alta para cada token). Los resultados no se pueden transmitir.

Cuando  n se usa con , best_of controla el número de finalizaciones candidatas, n especificando cuántos devolver;  best_of debe ser mayor que  n.

Nota: dado que este parámetro genera muchas finalizaciones, puede consumir rápidamente su cuota de token. Úselo con cuidado y asegúrese  max_tokens de que  stop esté configurado correctamente.

  • logit_bias (mapa, 选填, valor predeterminado nulo)

Modifica la probabilidad de que aparezca el token especificado al finalizar.

Acepta tokens de mapeo de objetos JSON (especificados por ID de token en el tokenizador GPT) a valores de sesgo relativos de -100 a 100. Puede usar esta  herramienta tokenizadora (para GPT-2 y GPT-3) para convertir texto en identificadores de token. Matemáticamente, se agrega sesgo a los logits generados por el modelo antes del muestreo. El efecto exacto varía según el modelo, pero los valores entre -1 y 1 deberían reducir o aumentar la probabilidad de selección; valores como -100 o 100 deberían hacer que el token asociado sea prohibido o seleccionado exclusivamente.

Por ejemplo, puede pasar  {"50256": -100} para evitar generar

  • user (cadena, opcional)

Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

6.  Charla  _

Dada una lista de mensajes que describen una conversación, el modelo devolverá una respuesta.

1.  Crear finalización de chat

 
 

http

copiar codigo

POST https://api.openai.com/v1/chat/completions

Cree una respuesta modelo para un diálogo de chat determinado.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello!"}] }'

respuesta:

 
 

json

copiar codigo

{ "id": "chatcmpl-123", "object": "chat.completion", "created": 1677652288, "choices": [{ "index": 0, "message": { "role": "assistant", "content": "\n\nHello there, how may I assist you today?", }, "finish_reason": "stop" }], "usage": { "prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21 } }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • model (cadena, requerido)

    El ID del modelo a utilizar. Para obtener detalles sobre qué modelos están disponibles para la API de chat, consulte  la Tabla de compatibilidad de puntos finales de modelos.

  • messages (matriz, requerida)

    Lista de mensajes que describen la conversación hasta el momento

    • role (cadena, requerido)

      El rol de autor de este mensaje. system , user o  assistant uno de

    • content (cadena, requerido)

      contenido del mensaje

    • name (cadena, opcional)

      El nombre del autor de este mensaje. Puede contener az, AZ, 0-9 y guión bajo, la longitud máxima es de 64 caracteres

  • temperature (número, opcional, por defecto es 1)

    Qué temperatura de muestreo usar,  entre 0 y 2 .

    Valores más altos como 0.8 harán que la salida sea más aleatoria, mientras que valores más bajos como 0.2 la harán más enfocada y determinista.

    Por lo general, recomendamos modificar este ( temperature ) para  top_p pero ambos no pueden existir al mismo tiempo, elija uno de los dos.

  • top_p (número, opcional, por defecto es 1)

    Una alternativa al muestreo de temperatura se denomina muestreo central, donde el modelo tiene en cuenta los resultados etiquetados con calidad de probabilidad top_p. Por lo tanto, 0.1 significa que solo se consideran los marcadores con la masa de probabilidad del 10% superior.

    Generalmente recomendamos modificar este ( top_p ) o  temperature, pero no ambos.

  • n (entero, 选填, el valor predeterminado es 1)

    Cuántas opciones de finalización de chat generar por mensaje de entrada

  • stream (booleano, 选填, el valor predeterminado es falso)

    Si se establece, se enviarán deltas de mensajes parciales, al igual que en ChatGPT. Los tokens se enviarán como  eventos de inserción del servidor de datos  a medida que estén disponibles y las transmisiones  data: [DONE] finalicen mediante mensajes. Consulte el libro de cocina de OpenAI para obtener  un código de ejemplo .

  • detener (cadena o matriz, 选填, valor predeterminado en nulo)

    Genere hasta 4 secuencias, la API dejará de generar más tokens.

  • max_tokens (entero, 选填, predeterminado en inf)

    Número máximo de tokens para generar al finalizar el chat   .

    La longitud total de los tokens de entrada y los tokens generados está limitada por la longitud del contexto del modelo.

  • presence_penalty (número, opcional, predeterminado a 0)

    Un número entre  -2.0 y 2.0 . Los valores positivos penalizan los nuevos tokens en función de si han aparecido en el texto hasta el momento, lo que aumenta la probabilidad de que el modelo hable sobre nuevos temas.

    Ver más sobre la frecuencia y las sanciones estatales

  • frequency_penalty (número, opcional, predeterminado a 0)

    Un número entre -2.0 y 2.0. Un valor positivo penaliza los tokens nuevos en función de su frecuencia existente en el texto, lo que reduce la probabilidad de que el modelo repita la misma fila.

    Ver más sobre penalizaciones por frecuencia y presencia

  • logit_bias (mapa, 选填, valor predeterminado nulo)

    Especifica la probabilidad de que el marcador aparezca cuando se completen las modificaciones.

    Acepta tokens de mapeo de objetos JSON (especificados por ID de token en tokenizadores) a valores de sesgo relativos de -100 a 100. Este sesgo se suma a los logits generados por el modelo antes del muestreo. El efecto exacto varía según el modelo, pero los valores entre -1 y 1 deberían reducir o aumentar la probabilidad de selección; valores como -100 o 100 deberían hacer que el marcador asociado sea suprimido o seleccionado exclusivamente.

  • user (cadena, opcional)

    Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

Siete   . _

Dada una pista y una instrucción, el modelo devuelve una versión editada de la pista.

1.  Crear edición

 
 

http

copiar codigo

POST https://api.openai.com/v1/edits

Cree un nuevo editor para las entradas, directivas y argumentos proporcionados.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/edits \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "text-davinci-edit-001", "input": "What day of the wek is it?", "instruction": "Fix the spelling mistakes" }'

respuesta:

 
 

json

copiar codigo

{ "object": "edit", "created": 1589478378, "choices": [ { "text": "What day of the week is it?", "index": 0, } ], "usage": { "prompt_tokens": 25, "completion_tokens": 32, "total_tokens": 57 } }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • model (cadena, requerido)

    El ID del modelo a utilizar. text-davinci-edit-001 Puede usar o  modelar en este punto final  code-davinci-edit-001 .

  • input (cadena, opcional, predeterminado a '')

    El texto de entrada que se utilizará como punto de partida para la edición.

  • instruction (cadena, requerido)

    Una descripción que indica al modelo cómo editar la solicitud.

  • n (entero, 选填, el valor predeterminado es 1)

    Cuántas ediciones deben generarse para la entrada y las directivas.

  • temperature (número, opcional, por defecto es 1)

    Qué temperatura de muestreo usar,  entre 0 y 2 .

    Valores más altos como 0.8 harán que la salida sea más aleatoria, mientras que valores más bajos como 0.2 la harán más enfocada y determinista.

    Por lo general, recomendamos modificar este ( temperature ) para  top_p pero ambos no pueden existir al mismo tiempo, elija uno de los dos.

  • top_p (número, opcional, por defecto es 1)

    Una alternativa al muestreo de temperatura se denomina muestreo central, donde el modelo tiene en cuenta los resultados etiquetados con calidad de probabilidad top_p. Por lo tanto, 0.1 significa que solo se consideran los marcadores con la masa de probabilidad del 10% superior.

    Generalmente recomendamos modificar este ( top_p ) o  temperature, pero no ambos.

Ocho  Imágenes  _

Dada una señal y/o una imagen de entrada, el modelo generará una nueva imagen.

Guía relacionada: Generación de imágenes .

1.  Crear imagen

 
 

http

copiar codigo

POST https://api.openai.com/v1/images/generations

Siga las indicaciones para crear una imagen.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/images/generations \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "prompt": "A cute baby sea otter", "n": 2, "size": "1024x1024" }'

respuesta:

 
 

json

copiar codigo

{ "created": 1589478378, "data": [ { "url": "https://..." }, { "url": "https://..." } ] }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • prompt (cadena, requerido)

    Una descripción textual de la imagen deseada. La longitud máxima es de 1000 caracteres.

  • n (entero, 选填, el valor predeterminado es 1)

    El número de imágenes a generar. Debe estar entre 1 y 10.

  • size (cadena, opcional, predeterminado a 1024x1024)

    Las dimensiones de la imagen resultante. Debe ser  uno de 256x256 , 512x512 o  1024x1024 .

  • response_format (cadena, 选填, URL por defecto)

    El formato de retorno de la imagen resultante. Debe ser  uno de url o  b64_json .

  • user (cadena, opcional)

    Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

2.  Crear edición de imagen

 
 

http

copiar codigo

POST https://api.openai.com/v1/images/edits

Cree imágenes editadas o ampliadas a partir de imágenes y señales originales.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/images/edits \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -F image="@otter.png" \ -F mask="@mask.png" \ -F prompt="A cute baby sea otter wearing a beret" \ -F n=2 \ -F size="1024x1024"

respuesta:

 
 

json

copiar codigo

{ "created": 1589478378, "data": [ { "url": "https://..." }, { "url": "https://..." } ] }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • image (cadena, requerido)

    La imagen a editar. Debe ser un archivo PNG válido, de menos de 4 MB y cuadrado. Si no se proporciona máscara, la imagen debe tener transparencia, que se utilizará como máscara.

  • mask (cadena, opcional)

    Una imagen adicional cuyas áreas totalmente transparentes (como aquellas con un valor alfa de cero) indican dónde debe editarse la imagen. image Debe ser un archivo PNG válido, menos de 4 MB y las  image mismas dimensiones que .

  • prompt (cadena, requerido)

    Una descripción textual de la imagen deseada. La longitud máxima es de 1000 caracteres.

  • n (entero, 选填, el valor predeterminado es 1)

    El número de imágenes a generar. Debe estar entre 1 y 10.

  • size (cadena, opcional, predeterminado a 1024x1024)

    Las dimensiones de la imagen resultante. Debe ser  uno de 256x256 , 512x512 o  1024x1024 .

  • response_format (cadena, 选填, URL por defecto)

    El formato de retorno de la imagen resultante. Debe ser  uno de url o  b64_json .

  • user (cadena, opcional)

    Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

3.  Crea una variación de imagen

 
 

http

copiar codigo

POST https://api.openai.com/v1/images/variations

Crea una variante de la imagen dada.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/images/variations \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -F image="@otter.png" \ -F n=2 \ -F size="1024x1024"

respuesta:

 
 

json

copiar codigo

{ "created": 1589478378, "data": [ { "url": "https://..." }, { "url": "https://..." } ] }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • image (cadena, requerido)

    La imagen que se usará como base para la variante. Debe ser un archivo PNG válido, menos de 4 MB y cuadrado.

  • n (entero, 选填, el valor predeterminado es 1)

    El número de imágenes a generar. Debe estar entre 1 y 10.

  • size (cadena, opcional, predeterminado a 1024x1024)

    Las dimensiones de la imagen resultante. Debe ser  uno de 256x256 , 512x512 o  1024x1024 .

  • response_format (cadena, 选填, URL por defecto)

    El formato de retorno de la imagen resultante. Debe ser  uno de url o  b64_json .

  • user (cadena, opcional)

    Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

Nueve  Incrustaciones  incrustadas

Obtenga una representación vectorial de una entrada determinada que los modelos y algoritmos de aprendizaje automático puedan usar fácilmente.

Guía relacionada: Incrustación

1.  Crear incrustaciones

 
 

http

copiar codigo

POST https://api.openai.com/v1/embeddings

Cree un vector de incrustación que represente el texto de entrada.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/embeddings \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "input": "The food was delicious and the waiter...", "model": "text-embedding-ada-002" }'

respuesta:

 
 

json

copiar codigo

{ "object": "list", "data": [ { "object": "embedding", "embedding": [ 0.0023064255, -0.009327292, .... (1536 floats total for ada-002) -0.0028842222, ], "index": 0 } ], "model": "text-embedding-ada-002", "usage": { "prompt_tokens": 8, "total_tokens": 8 } }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • model (cadena, requerido)

    El ID del modelo a utilizar  . Puede ver todos los modelos disponibles utilizando  la  API de modelos de lista, o ver nuestra  descripción general de modelos  para ver sus descripciones.

  • input (cadena o matriz, requerido)

    Ingrese texto para obtener una incrustación, codificada como una cadena o una matriz de tokens. Para obtener incrustaciones para múltiples entradas en una sola solicitud, pase una matriz de matrices de cadenas o matrices de matrices de tokens. Cada entrada no debe tener más de 8192 tokens de longitud .

  • user (cadena, opcional)

    Un identificador único, que representa a su usuario final, que ayuda a OpenAI a monitorear y detectar abusos. Más información

10.  Sonido  _

Aprende a convertir audio a texto.

Guía relacionada: Conversión de voz a texto

1.  Crear transcripción

 
 

http

copiar codigo

POST https://api.openai.com/v1/audio/transcriptions

Transcribe el audio al idioma de entrada.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/audio/transcriptions \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: multipart/form-data" \ -F file="@/path/to/file/audio.mp3" \ -F model="whisper-1"

respuesta:

 
 

json

copiar codigo

{ "text": "Imagine the wildest idea that you've ever had, and you're curious about how it might scale to something that's a 100, a 1,000 times bigger. This is a place where you can get to do that." }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • file (cadena, requerido)

    El archivo de audio a transcribir, en uno de los siguientes formatos: mp3, mp4, mpeg, mpga, m4a, wav o webm.

  • model (cadena, requerido)

    El ID del modelo a utilizar. Actualmente solo  whisper-1 disponible.

  • prompt (cadena, opcional)

    Un texto opcional para guiar el estilo del modelo o para continuar con el clip de audio anterior. El aviso  debe coincidir con el idioma del audio.

  • response_format (cadena, 选填, por defecto a json)

    Formato de salida de transcripción, las opciones incluyen: json, texto, srt, verbose_json o vtt.

  • temperature (número, opcional, predeterminado a 0)

    La temperatura de muestreo está entre 0 y 1. Los valores más altos (como 0,8) harán que la salida sea más aleatoria, mientras que los valores más bajos (como 0,2) la harán más enfocada y determinista. Si se establece en 0, el modelo utilizará  la probabilidad logarítmica  para aumentar automáticamente la temperatura hasta que se alcancen ciertos umbrales.

  • language (cadena, opcional)

    El idioma del audio de entrada. Proporcionar el idioma de entrada en  formato ISO-639-1  mejorará la precisión y la latencia.

2.  Crear traducción

 
 

http

copiar codigo

POST https://api.openai.com/v1/audio/translations

Traducir audio al inglés.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/audio/translations \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: multipart/form-data" \ -F file="@/path/to/file/german.m4a" \ -F model="whisper-1"

respuesta:

 
 

json

copiar codigo

{ "text": "Hello, my name is Wolfgang and I come from Germany. Where are you heading today?" }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • file (cadena, requerido)

    Los archivos de audio a traducir deben estar en uno de los siguientes formatos: mp3, mp4, mpeg, mpga, m4a, wav o webm.

  • model (cadena, requerido)

    El ID del modelo a utilizar. Actualmente solo  whisper-1 disponible.

  • prompt (cadena, opcional)

    Un texto opcional para guiar el estilo del modelo o para continuar con el clip de audio anterior. El aviso  debe coincidir con el idioma del audio.

  • response_format (cadena, 选填, por defecto a json)

    Formato de salida de transcripción, las opciones incluyen: json, texto, srt, verbose_json o vtt.

  • temperature (número, opcional, predeterminado a 0)

    La temperatura de muestreo está entre 0 y 1. Los valores más altos (como 0,8) harán que la salida sea más aleatoria, mientras que los valores más bajos (como 0,2) la harán más enfocada y determinista. Si se establece en 0, el modelo utilizará  la probabilidad logarítmica  para aumentar automáticamente la temperatura hasta que se alcancen ciertos umbrales.

11.  Archivos  _

Archivos  se usa para cargar documentos y se puede usar con  funciones como Ajuste fino  .

1.  Lista de archivos

 
 

http

copiar codigo

GET https://api.openai.com/v1/files

Devuelve una lista de archivos que pertenecen a la organización del usuario.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/files \ -H "Authorization: Bearer $OPENAI_API_KEY"

respuesta:

 
 

json

copiar codigo

{ "data": [ { "id": "file-ccdDZrC3iZVNiQVeEA6Z66wf", "object": "file", "bytes": 175, "created_at": 1613677385, "filename": "train.jsonl", "purpose": "search" }, { "id": "file-XjGxS3KTG0uNmNOK362iJua3", "object": "file", "bytes": 140, "created_at": 1613779121, "filename": "puppy.jsonl", "purpose": "search" } ], "object": "list" }

2.  Subir archivo

 
 

http

copiar codigo

POST https://api.openai.com/v1/files

Cargue un archivo que contenga documentación para usar en puntos finales/funciones. Actualmente, todos los archivos cargados por una organización pueden tener un tamaño de hasta 1 GB. Póngase en contacto con nosotros si necesita aumentar su límite de almacenamiento.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/files \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -F purpose="fine-tune" \ -F file="@mydata.jsonl"

respuesta:

 
 

json

copiar codigo

{ "id": "file-XjGxS3KTG0uNmNOK362iJua3", "object": "file", "bytes": 140, "created_at": 1613779121, "filename": "mydata.jsonl", "purpose": "fine-tune" }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • file (cadena, requerido)

     El nombre de archivo de JSON Lines para cargar  .

    Si  purpose se establece en  "ajuste fino" , cada línea es un registro JSON con campos de "solicitud" y "finalización" que representan sus  ejemplos de capacitación .

  • purpose (cadena, requerido)

    El uso previsto del documento cargado.

    Use  "ajuste fino"  para  Ajuste fino . Esto valida el formato del archivo cargado.

3.  Eliminar archivo

 
 

http

copiar codigo

DELETE https://api.openai.com/v1/files/{file_id}

Borrar archivos.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/files/file-XjGxS3KTG0uNmNOK362iJua3 \ -X DELETE \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, {file_id} es un elemento obligatorio de tipo cadena y el ID del archivo utilizado para esta solicitud.

respuesta:

 
 

json

copiar codigo

{ "id": "file-XjGxS3KTG0uNmNOK362iJua3", "object": "file", "deleted": true }

4.  Recuperar archivo

 
 

http

copiar codigo

GET https://api.openai.com/v1/files/{file_id}

Devolver información sobre un archivo específico.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/files/file-XjGxS3KTG0uNmNOK362iJua3 \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, {file_id} es un elemento obligatorio de tipo cadena y el ID del archivo utilizado para esta solicitud.

respuesta:

 
 

json

copiar codigo

{ "id": "file-XjGxS3KTG0uNmNOK362iJua3", "object": "file", "bytes": 140, "created_at": 1613779657, "filename": "mydata.jsonl", "purpose": "fine-tune" }

5.  Recuperar el contenido del archivo

 
 

http

copiar codigo

GET https://api.openai.com/v1/files/{file_id}/content

Devuelve el contenido del archivo especificado.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/files/file-XjGxS3KTG0uNmNOK362iJua3/content \ -H "Authorization: Bearer $OPENAI_API_KEY" > file.jsonl

Entre ellos, {file_id} es un elemento obligatorio de tipo cadena y el ID del archivo utilizado para esta solicitud.

12.  Afinaciones  _

Administre trabajos de ajuste fino para adaptar el modelo a sus datos de entrenamiento específicos.

Guía relacionada: Modelos de ajuste fino

1.  Crear ajustes finos

 
 

http

copiar codigo

POST https://api.openai.com/v1/fine-tunes

Cree un trabajo que ajuste con precisión el modelo especificado a partir del conjunto de datos dado.

La respuesta incluye detalles del trabajo que se puso en cola, incluido el estado del trabajo y el nombre del modelo ajustado al finalizar.

Obtenga más información sobre el ajuste fino .

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/fine-tunes \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "training_file": "file-XGinujblHPwGLSztz8cPS8XY" }'

respuesta:

 
 

json

copiar codigo

{ "id": "ft-AF1WoRqd3aJAHsqc9NY7iL8F", "object": "fine-tune", "model": "curie", "created_at": 1614807352, "events": [ { "object": "fine-tune-event", "created_at": 1614807352, "level": "info", "message": "Job enqueued. Waiting for jobs ahead to complete. Queue number: 0." } ], "fine_tuned_model": null, "hyperparams": { "batch_size": 4, "learning_rate_multiplier": 0.1, "n_epochs": 4, "prompt_loss_weight": 0.1, }, "organization_id": "org-...", "result_files": [], "status": "pending", "validation_files": [], "training_files": [ { "id": "file-XGinujblHPwGLSztz8cPS8XY", "object": "file", "bytes": 1547276, "created_at": 1610062281, "filename": "my-data-train.jsonl", "purpose": "fine-tune-train" } ], "updated_at": 1614807352, }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • training_file (cadena, requerido)

     El ID del archivo cargado que contiene  los datos de entrenamiento .

    Consulte  cargar archivo  para obtener información sobre cómo cargar un archivo.

    Su conjunto de datos debe estar formateado como  un archivo JSONL , donde cada ejemplo de entrenamiento es un objeto JSON con claves de "solicitud" y "finalización". Además, debe cargar  fine-tune un documento con un propósito.

    Consulte  la guía de ajuste fino para obtener más detalles .

  • validation_file (cadena, opcional)

     El ID del archivo cargado que contiene  los datos de autenticación .

    Si proporciona este archivo, los datos se usarán periódicamente durante el ajuste para generar métricas de validación. Estas métricas se pueden ver en  el archivo de resultados de ajuste fino  . Sus datos de capacitación y validación deben ser mutuamente excluyentes.

    Su conjunto de datos debe estar formateado como  un archivo JSONL , donde cada ejemplo de validación es un objeto JSON con claves de "solicitud" y "finalización". Además, debe cargar  fine-tune un documento con un propósito.

    Consulte  la guía de ajuste fino para obtener más detalles .

  • model (cadena,选填,Predeterminado en curie)

    El nombre del modelo base para afinar.

    Puede elegir uno de estos: "ada", "babbage", "curie", "davinci" o un modelo ajustado creado después del 21 de abril de 2022. Para obtener más información sobre estos modelos, consulte  la documentación de Modelos  .

  • n_epochs (entero, 选填, el valor predeterminado es 4)

    El número de épocas para entrenar el modelo. Una época se refiere a un recorrido completo del conjunto de datos de entrenamiento.

  • batch_size (entero, 选填, predeterminado en nulo)

    El tamaño del lote utilizado para el entrenamiento. El tamaño del lote es el número de ejemplos de entrenamiento utilizados para entrenar un solo paso hacia adelante y hacia atrás.

    De forma predeterminada, el tamaño del lote se configurará dinámicamente para que sea aproximadamente el 0,2 % de la cantidad de ejemplos de conjuntos de entrenamiento, con un límite de 256.

    En general, hemos descubierto que los tamaños de lote más grandes funcionan mejor para conjuntos de datos más grandes.

  • learning_rate_multiplier (número, 选填, predeterminado en nulo)

    El multiplicador de tasa de aprendizaje utilizado para el entrenamiento. La tasa de aprendizaje de ajuste fino se obtiene multiplicando la tasa de aprendizaje original utilizada en el entrenamiento previo por este valor.

    De forma predeterminada, el multiplicador para la tasa de aprendizaje es 0,05, 0,1 o 0,2, según el final  batch_size(los tamaños de lote más grandes generalmente funcionan mejor con tasas de aprendizaje más altas). Recomendamos intentar experimentar con diferentes valores en el rango de 0,02 a 0,2 para encontrar el que produce los mejores resultados.

  • prompt_loss_weight (número, opcional, por defecto es 0.01)

    El peso solía insinuar la pérdida de fichas. Esto controla cuánto intenta aprender el modelo para generar sugerencias (en comparación con tener siempre finalización con un peso de 1,0), y puede agregar un efecto estabilizador al entrenamiento cuando las finalizaciones son cortas.

    Si las señales son muy largas (en relación con la finalización), podría tener sentido reducir este peso para evitar priorizar demasiado el aprendizaje de las señales.

  • compute_classification_metrics (booleano, 选填, el valor predeterminado es falso)

    Si se establece, usamos el conjunto de validación al final de cada época para calcular métricas específicas de la clasificación, como la precisión y la puntuación F-1. Estas métricas se pueden ver en  el archivo de resultados  .

    Para calcular una métrica categórica, debe proporcionar uno validation_file(验证文件). Además, debe especificar la clasificación multiclase  classification_n_classesy la clasificación binaria  classification_positive_class.

  • classification_n_classes (entero, 选填, predeterminado en nulo)

    El número de categorías en la tarea de clasificación.

    Este parámetro es necesario en tareas de multiclasificación.

  • classification_positive_class (cadena, 选填, valor predeterminado nulo)

    Clase positiva en clasificación binaria.

    Este parámetro es necesario para generar métricas de precisión, recuperación y F1 al realizar una clasificación binaria.

  • classification_betas (matriz, 选填, valor predeterminado nulo)

    Si se proporciona este parámetro, calcularemos la puntuación F-beta en el valor beta especificado. La puntuación F-beta es una generalización de la puntuación F-1. Esto es solo para la clasificación binaria.

    Cuando beta es 1 (es decir, puntuación F-1), la precisión y la recuperación tienen el mismo peso. Los valores beta más grandes ponen más énfasis en la recuperación que en la precisión. Los valores beta más pequeños ponen más énfasis en la precisión que en la recuperación.

  • suffix (cadena, 选填, valor predeterminado nulo)

    Una cadena de hasta 40 caracteres de longitud que se agregará al nombre de su modelo ajustado.

    Por ejemplo, suffix "nombre de modelo personalizado" generaría un nombre de modelo como  ada:ft-your-org:custom-model-name-2022-02-15-04-21-04.

2.  Enumera los ajustes finos

 
 

http

copiar codigo

GET https://api.openai.com/v1/fine-tunes

Enumere los trabajos de ajuste de la organización

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/fine-tunes \ -H "Authorization: Bearer $OPENAI_API_KEY"

respuesta:

 
 

json

copiar codigo

{ "object": "list", "data": [ { "id": "ft-AF1WoRqd3aJAHsqc9NY7iL8F", "object": "fine-tune", "model": "curie", "created_at": 1614807352, "fine_tuned_model": null, "hyperparams": { ... }, "organization_id": "org-...", "result_files": [], "status": "pending", "validation_files": [], "training_files": [ { ... } ], "updated_at": 1614807352, }, { ... }, { ... } ] }

3.  Recuperar el ajuste fino .

 
 

http

copiar codigo

GET https://api.openai.com/v1/fine-tunes/{fine_tune_id}

Obtenga información sobre trabajos de puesta a punto.

Obtenga más información sobre el ajuste fino .

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/fine-tunes/ft-AF1WoRqd3aJAHsqc9NY7iL8F \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, fine_tune_id se encuentra una cadena de caracteres de tipo cadena, que se debe pasar ; el ID del trabajo de puesta a punto

respuesta:

 
 

json

copiar codigo

{ "id": "ft-AF1WoRqd3aJAHsqc9NY7iL8F", "object": "fine-tune", "model": "curie", "created_at": 1614807352, "events": [ { "object": "fine-tune-event", "created_at": 1614807352, "level": "info", "message": "Job enqueued. Waiting for jobs ahead to complete. Queue number: 0." }, { "object": "fine-tune-event", "created_at": 1614807356, "level": "info", "message": "Job started." }, { "object": "fine-tune-event", "created_at": 1614807861, "level": "info", "message": "Uploaded snapshot: curie:ft-acmeco-2021-03-03-21-44-20." }, { "object": "fine-tune-event", "created_at": 1614807864, "level": "info", "message": "Uploaded result files: file-QQm6ZpqdNwAaVC3aSz5sWwLT." }, { "object": "fine-tune-event", "created_at": 1614807864, "level": "info", "message": "Job succeeded." } ], "fine_tuned_model": "curie:ft-acmeco-2021-03-03-21-44-20", "hyperparams": { "batch_size": 4, "learning_rate_multiplier": 0.1, "n_epochs": 4, "prompt_loss_weight": 0.1, }, "organization_id": "org-...", "result_files": [ { "id": "file-QQm6ZpqdNwAaVC3aSz5sWwLT", "object": "file", "bytes": 81509, "created_at": 1614807863, "filename": "compiled_results.csv", "purpose": "fine-tune-results" } ], "status": "succeeded", "validation_files": [], "training_files": [ { "id": "file-XGinujblHPwGLSztz8cPS8XY", "object": "file", "bytes": 1547276, "created_at": 1610062281, "filename": "my-data-train.jsonl", "purpose": "fine-tune-train" } ], "updated_at": 1614807865, }

4.  Cancele el ajuste fino

 
 

http

copiar codigo

POST https://api.openai.com/v1/fine-tunes/{fine_tune_id}/cancel

Cancela inmediatamente el trabajo de ajuste fino.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/fine-tunes/ft-AF1WoRqd3aJAHsqc9NY7iL8F/cancel \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, fine_tune_id se encuentra una cadena de caracteres de tipo cadena, que se debe pasar ; el ID del trabajo de puesta a punto

respuesta:

 
 

json

copiar codigo

{ "id": "ft-xhrpBbvVUzYGo8oUO1FY4nI7", "object": "fine-tune", "model": "curie", "created_at": 1614807770, "events": [ { ... } ], "fine_tuned_model": null, "hyperparams": { ... }, "organization_id": "org-...", "result_files": [], "status": "cancelled", "validation_files": [], "training_files": [ { "id": "file-XGinujblHPwGLSztz8cPS8XY", "object": "file", "bytes": 1547276, "created_at": 1610062281, "filename": "my-data-train.jsonl", "purpose": "fine-tune-train" } ], "updated_at": 1614807789, }

5.  Lista de eventos de ajuste fino

 
 

http

copiar codigo

GET https://api.openai.com/v1/fine-tunes/{fine_tune_id}/events

Obtenga actualizaciones de estado granulares para trabajos de ajuste.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/fine-tunes/ft-AF1WoRqd3aJAHsqc9NY7iL8F/events \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, fine_tune_id se encuentra una cadena de caracteres de tipo string, a la que se debe pasar : el ID del trabajo de puesta a punto;

respuesta:

 
 

json

copiar codigo

{ "object": "list", "data": [ { "object": "fine-tune-event", "created_at": 1614807352, "level": "info", "message": "Job enqueued. Waiting for jobs ahead to complete. Queue number: 0." }, { "object": "fine-tune-event", "created_at": 1614807356, "level": "info", "message": "Job started." }, { "object": "fine-tune-event", "created_at": 1614807861, "level": "info", "message": "Uploaded snapshot: curie:ft-acmeco-2021-03-03-21-44-20." }, { "object": "fine-tune-event", "created_at": 1614807864, "level": "info", "message": "Uploaded result files: file-QQm6ZpqdNwAaVC3aSz5sWwLT." }, { "object": "fine-tune-event", "created_at": 1614807864, "level": "info", "message": "Job succeeded." } ] }

Parámetros de consulta

  • stream (booleano, 选填, el valor predeterminado es falso)

    Ya sea para flujo de eventos trabajos de ajuste fino.

    Si se establece en verdadero, los eventos estarán disponibles como  eventos enviados por el servidor de datos  . La transmisión finaliza con un mensaje cuando el trabajo se completa (con éxito, cancelado o fallido)  data:[DONE] .

    Si se establece en falso, solo se devolverán los eventos generados hasta el momento.

6.  Eliminar el modelo de ajuste fino

 
 

http

copiar codigo

DELETE https://api.openai.com/v1/models/{model}

Elimine el modelo ajustado. Debe tener el rol de propietario en la organización.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/models/curie:ft-acmeco-2021-03-03-21-44-20 \ -X DELETE \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, model se encuentra un string de tipo string, que se debe pasar ; el modelo a borrar

respuesta:

 
 

json

copiar codigo

{ "id": "curie:ft-acmeco-2021-03-03-21-44-20", "object": "model", "deleted": true }

13.   Revisión de moderadores

Dado un texto de entrada, indique si el modelo lo clasifica como una infracción de la política de contenido de OpenAI.

Guía relacionada: Moderaciones

1.  Crear moderación

 
 

http

copiar codigo

POST https://api.openai.com/v1/moderations

Clasifique el texto para determinar si viola la política de contenido de OpenAI

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/moderations \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "input": "I want to kill them." }'

respuesta:

 
 

json

copiar codigo

{ "id": "modr-5MWoLO", "model": "text-moderation-001", "results": [ { "categories": { "hate": false, "hate/threatening": true, "self-harm": false, "sexual": false, "sexual/minors": false, "violence": true, "violence/graphic": false }, "category_scores": { "hate": 0.22714105248451233, "hate/threatening": 0.4132447838783264, "self-harm": 0.005232391878962517, "sexual": 0.01407341007143259, "sexual/minors": 0.0038522258400917053, "violence": 0.9223177433013916, "violence/graphic": 0.036865197122097015 }, "flagged": true } ] }

Cuerpo de la solicitud (explicación detallada de los parámetros de entrada)

  • input (cadena o matriz, requerido)

    el texto de entrada para clasificar

  • model (cadena,选填,Predeterminado en texto-moderación-último)

    Hay dos modelos de moderación de contenido disponibles: text-moderation-stable y  text-moderation-latest.

    De forma predeterminada, se utiliza un modelo  text-moderation-latest que se actualiza automáticamente con el tiempo. Esto garantiza que siempre esté utilizando nuestros modelos más precisos. Si usa  text-moderation-stable, le enviaremos una notificación avanzada antes de actualizar el modelo. text-moderation-stable puede ser un poco menos preciso  text-moderation-latest.

14.  Motores  motor

El punto final del motor está obsoleto.  Utilice sus modelos de reemplazo . Más información

Estos puntos finales describen y brindan acceso a los diversos motores disponibles en la API.

1.  Motores de lista  <Desolado>

 
 

http

copiar codigo

GET https://api.openai.com/v1/engines

Enumera los modelos actualmente disponibles (sin sintonizar) y proporciona información básica sobre cada uno, como el propietario y la disponibilidad.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/engines \ -H "Authorization: Bearer $OPENAI_API_KEY"

respuesta:

 
 

json

copiar codigo

{ "data": [ { "id": "engine-id-0", "object": "engine", "owner": "organization-owner", "ready": true }, { "id": "engine-id-2", "object": "engine", "owner": "organization-owner", "ready": true }, { "id": "engine-id-3", "object": "engine", "owner": "openai", "ready": false }, ], "object": "list" }

2.  Recuperar motor  <Desolado>

 
 

http

copiar codigo

GET https://api.openai.com/v1/engines/{engine_id}

Recupera una instancia de modelo y proporciona información básica, como el propietario y la disponibilidad.

Solicite una demostración:

 
 

http

copiar codigo

curl https://api.openai.com/v1/engines/text-davinci-003 \ -H "Authorization: Bearer $OPENAI_API_KEY"

Entre ellos, engine_id se encuentra una cadena de caracteres de tipo cadena, a la que se debe pasar el ID del motor utilizado para esta solicitud.

respuesta:

 
 

json

copiar codigo

{ "id": "text-davinci-003", "object": "engine", "owner": "openai", "ready": true }

15.  Detalles del  parámetro detalles del parámetro

Penalizaciones de Frecuencia y Existencia

 Las penalizaciones de frecuencia y presencia que se encuentran en la  API de finalización se pueden usar para reducir la probabilidad de muestrear secuencias de tokens duplicadas. Se modifican agregando directamente contribuciones a logits (probabilidades logarítmicas no normalizadas).

 
 

pitón

copiar codigo

mu[j] -> mu[j] - c[j] * alpha_frequency - float(c[j] > 0) * alpha_presence

Dónde:

  • mu[j] es el logit de la ficha j-ésima
  • c[j] es la frecuencia con la que se muestreó ese token antes de la posición actual
  • float(c[j] > 0) es 1 si  c[j] > 0 y 0 en caso contrario
  • alpha_frequency es el coeficiente de penalización de frecuencia
  • alpha_presence es el coeficiente de penalización por presencia

Como podemos ver, la penalización por presencia es una contribución aditiva única que se aplica a todos los tokens que se han muestreado al menos una vez, y la penalización por frecuencia es una contribución proporcional a la frecuencia con la que se ha muestreado un token en particular.

Un valor razonable para el factor de penalización está entre 0,1 y 1 si el objetivo es solo reducir ligeramente las muestras repetidas. Si el objetivo es suprimir fuertemente los duplicados, el factor se puede aumentar a 2, pero esto puede reducir significativamente la calidad de la muestra. Los valores negativos se pueden utilizar para aumentar la probabilidad de recurrencia.

Supongo que te gusta

Origin blog.csdn.net/sinat_37574187/article/details/132207564
Recomendado
Clasificación