0Pricing
AI Engineering Academy · Lección

Configuración del entorno de Python

Instalará el SDK de Python de OpenAI, creará un entorno virtual, almacenará su clave de API de forma segura mediante variables de entorno y verificará que todo funciona con una comprobación de estado.

Configuración del entorno de Python es una lección gratuita de AI Engineering Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de AI Engineering Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de AI Engineering Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Why Virtual Environments Matter

AI projects pull in lots of packages, and they clash over versions. A virtual environment gives each project its own isolated Python so nothing collides. The code sets one up.

# Create and activate a virtual environment
# Run these commands in your terminal

python3 -m venv .venv          # create environment in .venv/ folder
source .venv/bin/activate      # activate on macOS/Linux
# .venv\Scripts\activate       # activate on Windows

python --version               # verify you are using the right Python

Installing the OpenAI Python SDK

The official OpenAI Python SDK is how you talk to the API — it handles auth, retries, and parsing. Install it inside your active environment, as the code shows.

# Install the OpenAI SDK
pip install openai

# For production projects, pin the version:
pip install 'openai>=1.30.0,<2.0.0'

# Save your dependencies to requirements.txt:
pip freeze > requirements.txt

# Install from requirements.txt on a new machine:
pip install -r requirements.txt

Getting and Storing Your API Key

Your API key is a secret — never put it in code. Store it in a .env file, add that to .gitignore, and load it as an environment variable. The code shows the pattern.

# .env file (never commit this!)
# OPENAI_API_KEY=sk-proj-...

# In your Python script:
import os
from dotenv import load_dotenv

load_dotenv()  # reads .env and sets environment variables

api_key = os.environ.get('OPENAI_API_KEY')
if not api_key:
    raise ValueError('OPENAI_API_KEY environment variable not set!')

print('API key loaded:', api_key[:8] + '...')  # only print prefix

Initializing the OpenAI Client

You create one OpenAI() client and call everything through it. If your key is set as an env variable, the client finds it automatically — cleaner and safer.

from openai import OpenAI

# API key is read from OPENAI_API_KEY environment variable automatically
client = OpenAI()

# Or explicitly:
# client = OpenAI(api_key='sk-proj-...')  # only for quick tests

# For alternative providers:
# client = OpenAI(
#     api_key='your-together-key',
#     base_url='https://api.together.xyz/v1'
# )

Your First API Health Check

Before building anything, run a tiny health check that lists the models. It confirms your key works, the network is fine, and the SDK is installed. Always run it first.

from openai import OpenAI

client = OpenAI()

# Simple health check: list available models
try:
    models = client.models.list()
    print(f'Connection successful! Found {len(list(models))} models.')
except Exception as e:
    print(f'Connection failed: {e}')

Project Structure Best Practices

As projects grow, a consistent project structure saves headaches: keep secrets in .env, code in src/, and a .env.example template so teammates know what's needed.

# Recommended project structure:
# my_ai_project/
# |-- .env              (secrets, gitignored)
# |-- .env.example      (template, committed)
# |-- .gitignore
# |-- requirements.txt
# |-- README.md
# |-- src/
# |   |-- __init__.py
# |   |-- client.py    (OpenAI client initialization)
# |   |-- prompts.py   (prompt templates)
# |   |-- main.py
# |-- tests/
# |-- notebooks/
# |-- Makefile

Managing Multiple API Keys Securely

Juggling many provider keys? A secrets manager like AWS Secrets Manager or Doppler scales better than one .env. Use a separate key per project so you can revoke safely.

# .env.example - commit this as a template
# OPENAI_API_KEY=sk-proj-...your key here...
# OPENAI_ORG_ID=org-...optional org id...
# COHERE_API_KEY=...cohere key...
# PINECONE_API_KEY=...pinecone key...
# PINECONE_ENVIRONMENT=us-east-1-aws

# In code, load all at once:
from dotenv import load_dotenv
import os

load_dotenv()

config = {
    'openai_key': os.environ['OPENAI_API_KEY'],
    'cohere_key': os.environ.get('COHERE_API_KEY'),  # optional
}

Using Python Version Managers

Different projects need different Python versions. A version manager like pyenv installs several and switches between them per folder — no system-level conflicts.

# Install pyenv (macOS via Homebrew)
# brew install pyenv

# Install Python 3.11
# pyenv install 3.11.9

# Set Python version for this project directory
# pyenv local 3.11.9

# This creates a .python-version file:
# cat .python-version
# 3.11.9

# Now python3 automatically uses 3.11.9 in this directory

Testing Your Setup With a Real Prompt

The real test is a live prompt that gets a real reply. This end-to-end check validates your setup, key, network, and billing in one shot. Ask for one word: READY.

from openai import OpenAI
from dotenv import load_dotenv

load_dotenv()
client = OpenAI()

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=[
        {'role': 'system', 'content': 'You are a test responder.'},
        {'role': 'user', 'content': 'Reply with just the word READY.'}
    ],
    temperature=0,
    max_tokens=5
)

print('Response:', response.choices[0].message.content)
print('Model used:', response.model)
print('Tokens used:', response.usage.total_tokens)

Using uv for Faster Package Management

uv is a fast, Rust-based package manager that's 10-100x quicker than pip. For heavy AI libraries, a 3-minute install drops to seconds. Worth adopting from day one.

# Install uv (macOS/Linux)
# curl -LsSf https://astral.sh/uv/install.sh | sh

# Create a project with uv
# uv init my-ai-project
# cd my-ai-project

# Add dependencies
# uv add openai python-dotenv

# Run your script using the uv-managed environment
# uv run python main.py

# Generate requirements.txt for compatibility
# uv pip compile pyproject.toml -o requirements.txt

Environment Variables in Production

In production, .env isn't enough. Platforms like Railway and Vercel inject environment variables at runtime. Your code reads os.environ; only the injected values change.

# Centralized config loader pattern for production
import os
from dataclasses import dataclass

@dataclass
class AppConfig:
    openai_api_key: str
    environment: str
    log_level: str

    @classmethod
    def from_env(cls):
        key = os.environ.get('OPENAI_API_KEY')
        if not key:
            raise EnvironmentError('OPENAI_API_KEY must be set')
        return cls(
            openai_api_key=key,
            environment=os.environ.get('ENVIRONMENT', 'development'),
            log_level=os.environ.get('LOG_LEVEL', 'INFO')
        )

config = AppConfig.from_env()

Quick Check

Test your understanding of AI Engineering concepts from this lesson.

Lesson Recap

You set up your toolkit: a virtual environment isolates dependencies, API keys live in env variables (never in code), and a health check runs first on any machine. Next: chat. 🎉

Preguntas frecuentes

¿La lección «Configuración del entorno de Python» es gratis?

Sí — el texto completo de «Configuración del entorno de Python» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de AI Engineering Academy, actualiza a CoddyKit PRO. El curso de AI Engineering Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Configuración del entorno de Python»?

Instalará el SDK de Python de OpenAI, creará un entorno virtual, almacenará su clave de API de forma segura mediante variables de entorno y verificará que todo funciona con una comprobación de estado. Practicas AI Engineering Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar AI Engineering Academy?

No se requiere experiencia previa. AI Engineering Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Configuración del entorno de Python»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de AI Engineering Academy?

Sí. Cada lección de AI Engineering Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Configuración del entorno de Python
  2. El endpoint de Chat Completions
  3. Control del comportamiento del modelo con parámetros
  4. Gestión de errores y límites de velocidad
← Volver a AI Engineering Academy