Interazione con le API degli LLM (OpenAI, Anthropic)
Comprenda come interagire programmaticamente con i principali fornitori di LLM, come OpenAI e Anthropic, usando le loro API ufficiali.
Interazione con le API degli LLM (OpenAI, Anthropic) è una lezione Prompt Engineering & LLM Optimization for Developers gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Prompt Engineering & LLM Optimization for Developers, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Prompt Engineering & LLM Optimization for Developers include 4 lezioni in totale.
Parti di questa lezione non sono ancora state tradotte e vengono mostrate in inglese.
Why Use LLM APIs?
Large Language Models (LLMs) like those from OpenAI and Anthropic are incredibly powerful. To use them in your own apps, you need to interact with their Application Programming Interfaces (APIs).
An API acts like a messenger, allowing your code to send requests to the LLM and receive its responses. This enables you to build dynamic, AI-powered features into your applications.
API Keys: Your Access Pass
To use an LLM API, you need an API key. Think of it as a password that authenticates your requests and links them to your account for billing.
- Get your key: Sign up on OpenAI or Anthropic's platform and generate an API key.
- Keep it secret: Never hardcode your API key directly in your code. Store it securely, ideally as an environment variable.
- Environment variables: These are system-wide variables that your program can access without the key being visible in the code itself.
OpenAI API: Initial Setup
Let's start with OpenAI. First, you'll need to install their official Python client library. Then, set up your API key for authentication.
Run this in your terminal:
pip install openaiThen, in your Python script, you'll typically set the API key like this (before making calls):
import os
# It's best practice to load from an environment variable
# e.g., export OPENAI_API_KEY='sk-your-key-here'
# This line is usually enough if OPENAI_API_KEY is set
# The client automatically picks it up.
# If you need to set it manually in code (NOT recommended for production):
# from openai import OpenAI
# client = OpenAI(api_key="YOUR_ACTUAL_API_KEY")
print("OpenAI client library installed and ready!")
print("Ensure OPENAI_API_KEY is set as an environment variable.")OpenAI API: First Chat Completion
The core of OpenAI's API for conversation is the Chat Completions endpoint. You send a list of 'messages' and the model responds with the next message in the conversation.
Try running this simple example:
from openai import OpenAI
import os
# Initialize the client. It will automatically pick up OPENAI_API_KEY
# from your environment variables if it's set.
client = OpenAI()
def get_completion(prompt_text):
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content": prompt_text}
],
temperature=0.7,
max_tokens=50
)
return response.choices[0].message.content
if __name__ == "__main__":
# Make sure you have your OPENAI_API_KEY set as an environment variable
# before running this code.
if "OPENAI_API_KEY" not in os.environ:
print("Error: OPENAI_API_KEY environment variable not set.")
print("Please set it before running this script.")
else:
user_prompt = "What is the capital of France?"
print(f"User: {user_prompt}")
llm_response = get_completion(user_prompt)
print(f"LLM: {llm_response}")OpenAI: Key Parameters
When making an OpenAI API call, these parameters are crucial:
model: Specifies which LLM to use (e.g.,"gpt-3.5-turbo","gpt-4"). Different models have different capabilities and costs.messages: A list of message objects defining the conversation history. Each object has a"role"and"content".temperature: Controls the randomness of the output. Higher values (e.g., 0.8) make the output more creative; lower values (e.g., 0.2) make it more focused and deterministic.max_tokens: The maximum number of tokens (words/pieces of words) the model should generate in its response.
OpenAI: Understanding Message Roles
The messages parameter in OpenAI's API uses specific roles to guide the conversation flow:
system: Sets the overall behavior or persona of the assistant.user: Represents the user's input to the assistant.assistant: Represents the assistant's previous responses.
Including past assistant messages helps the model maintain context.
from openai import OpenAI
import os
client = OpenAI()
def get_contextual_completion(messages_list):
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=messages_list,
temperature=0.7,
max_tokens=70
)
return response.choices[0].message.content
if __name__ == "__main__":
if "OPENAI_API_KEY" not in os.environ:
print("Error: OPENAI_API_KEY environment variable not set.")
print("Please set it before running this script.")
else:
conversation_history = [
{"role": "system", "content": "You are a helpful assistant that provides short, factual answers."},
{"role": "user", "content": "What is the capital of Japan?"},
{"role": "assistant", "content": "The capital of Japan is Tokyo."},
{"role": "user", "content": "And of Germany?"}
]
print("Current conversation:")
for msg in conversation_history:
print(f"{msg['role'].capitalize()}: {msg['content']}")
llm_response = get_contextual_completion(conversation_history)
print(f"Assistant: {llm_response}")Anthropic API: Initial Setup
Now let's look at Anthropic's Claude models. Similar to OpenAI, you'll install their client library and set your API key.
Run this in your terminal:
pip install anthropicThen, prepare your Python script:
import os
# It's best practice to load from an environment variable
# e.g., export ANTHROPIC_API_KEY='sk-ant-your-key-here'
# The client automatically picks it up if ANTHROPIC_API_KEY is set.
# If you need to set it manually in code (NOT recommended for production):
# from anthropic import Anthropic
# client = Anthropic(api_key="YOUR_ACTUAL_ANTHROPIC_API_KEY")
print("Anthropic client library installed and ready!")
print("Ensure ANTHROPIC_API_KEY is set as an environment variable.")Anthropic API: First Messages Call
Anthropic's main API for conversational models is called the Messages API. It also uses a list of messages, but with slightly different role names and structure compared to OpenAI.
Run this example to see it in action:
from anthropic import Anthropic
import os
# Initialize the client. It will automatically pick up ANTHROPIC_API_KEY
# from your environment variables if it's set.
client = Anthropic()
def get_claude_completion(prompt_text):
response = client.messages.create(
model="claude-3-haiku-20240307", # A fast, cheaper Claude model
max_tokens=50,
temperature=0.7,
messages=[
{"role": "user", "content": prompt_text}
]
)
return response.content[0].text
if __name__ == "__main__":
# Make sure you have your ANTHROPIC_API_KEY set as an environment variable
# before running this code.
if "ANTHROPIC_API_KEY" not in os.environ:
print("Error: ANTHROPIC_API_KEY environment variable not set.")
print("Please set it before running this script.")
else:
user_prompt = "Tell me a very short fun fact about space."
print(f"User: {user_prompt}")
claude_response = get_claude_completion(user_prompt)
print(f"Claude: {claude_response}")Anthropic: Key Parameters & Roles
Anthropic's Messages API shares similarities with OpenAI but has some distinctions:
model: Specifies the Claude model (e.g.,"claude-3-haiku-20240307","claude-3-opus-20240229").messages: A list of message objects. Each message must alternate between"user"and"assistant"roles. Unlike OpenAI, Anthropic does not have a distinct"system"role; system instructions are included in the first"user"message or a dedicated"system"parameter.max_tokens: The maximum number of tokens Claude should generate.temperature: Controls creativity, similar to OpenAI.
API Interaction Check
You've learned the basics of interacting with both OpenAI and Anthropic APIs. Let's test your understanding!
Recap: Connecting to LLMs
In this lesson, you've taken your first steps into programmatic interaction with LLMs!
- We understood the importance of LLM APIs for building AI-powered applications.
- You learned how to securely handle API keys using environment variables.
- We explored setting up and making basic chat completion calls with both OpenAI's and Anthropic's Python client libraries.
- You now understand key parameters like
model,messages,temperature, andmax_tokensfor both platforms.
This knowledge is foundational for integrating powerful LLMs into your developer workflows!
Domande Frequenti
La lezione «Interazione con le API degli LLM (OpenAI, Anthropic)» è gratuita?
Sì — il testo completo di «Interazione con le API degli LLM (OpenAI, Anthropic)» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Prompt Engineering & LLM Optimization for Developers, passa a CoddyKit PRO. Il corso Prompt Engineering & LLM Optimization for Developers include 4 lezioni in totale.
Cosa imparerò in «Interazione con le API degli LLM (OpenAI, Anthropic)»?
Comprenda come interagire programmaticamente con i principali fornitori di LLM, come OpenAI e Anthropic, usando le loro API ufficiali. Eserciti Prompt Engineering & LLM Optimization for Developers con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Prompt Engineering & LLM Optimization for Developers?
Non è richiesta alcuna esperienza precedente. Prompt Engineering & LLM Optimization for Developers su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Interazione con le API degli LLM (OpenAI, Anthropic)»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Prompt Engineering & LLM Optimization for Developers?
Sì. Ogni lezione Prompt Engineering & LLM Optimization for Developers include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Interazione con le API degli LLM (OpenAI, Anthropic)
- Nozioni di base su LangChain e LlamaIndex
- Gestione e versionamento dei prompt
- Basi della Retrieval-Augmented Generation (RAG)