por Emery Berger
Commentator aprovecha modelos de lenguaje grandes para agregar comentarios explicativos de alto nivel, cadenas de documentación y tipos al código Python.
Para funcionar, Commentator debe estar conectado a un servicio de IA local, una cuenta de OpenAI o una cuenta de Amazon Web Services.
Servicio de IA local (Ollama)
El comentarista ahora puede utilizar un servicio de IA instalado localmente; actualmente apoya a Ollama. Para usar Ollama, instálelo y configure la variable de entorno
USE_OLLAMA
:export USE_OLLAMA=1
Abierto AI
Su cuenta deberá tener un saldo positivo para que esto funcione (verifique su saldo de OpenAI). Obtenga una clave OpenAI aquí.
Actualmente, el comentarista utiliza de forma predeterminada GPT-4 y recurre a GPT-3.5-turbo si se produce un error de solicitud. Para que funcione el mejor y más nuevo modelo (GPT-4), debe haber comprado al menos $1 en créditos (si su cuenta API se creó antes del 13 de agosto de 2023) o $0,50 (si tiene una cuenta API más nueva).
Una vez que tenga una clave API, configúrela como una variable de entorno llamada
OPENAI_API_KEY
.# On Linux/MacOS: export OPENAI_API_KEY= < your-api-key > # On Windows: $env :OPENAI_API_KEY= < your-api-key >Roca Amazónica
Commentator ahora admite Amazon Bedrock, utilizando el modelo Claude. Para utilizar Bedrock, debe configurar tres variables de entorno.
# On Linux/MacOS: export AWS_ACCESS_KEY_ID= < your-access-key > export AWS_SECRET_ACCESS_KEY= < your-secret-key > export AWS_REGION_NAME=us-west-2Si aún no tiene claves de acceso, debería poder crearlas modificando este enlace con su propio nombre de usuario y región:
https://us-east-1.console.aws.amazon.com/iam/home?region=us-east-1#/users/details/YOUR_USER_NAME?section=security_credentials
También debe solicitar acceso a Claude (cambie la región según sea necesario):
https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/modelaccess
Commentator seleccionará automáticamente qué servicio de IA utilizar (local, OpenAI o AWS Bedrock) cuando detecte que se han configurado las variables de entorno adecuadas.
El comentarista toma una ruta a un archivo Python y un parámetro de idioma opcional. Si se especifica el idioma, Commentator traduce cada cadena de documentación y comentario en el código al idioma especificado. El idioma predeterminado es el inglés.
Para instalar Commentator, puedes usar pip:
$ pip install python-commentator
Supongamos que tiene un archivo llamado example.py
con el siguiente código:
def absolutely(n):
if n < 0:
return -n
else:
return n
Ejecute Commentator en este archivo para agregar comentarios y escribir anotaciones:
$ commentator example.py
El código resultante podría ser:
def absolutely(n: int) -> int:
"""
Return the absolute value of a number.
Args:
- n (int): the number whose absolute value we want to find
Returns:
- int: the absolute value of n
"""
if n < 0:
# If n is negative
# Return the negative version of n (i.e. its absolute value)
return -n
else:
# Otherwise (if n is non-negative)
# Return n as-is (it already is its absolute value)
return n
Tenga en cuenta que Commentator ha agregado una cadena de documentación y escribe anotaciones.