Passer au contenu principal
Si votre entreprise utilise un proxy pour accéder aux APIs externes, vous devez spécifier sa configuration dans vos requêtes pour permettre la connexion au client Python de notre API. Trois méthodes sont possibles pour configurer l’utilisation d’un proxy:
  • Au niveau de chaque requête
  • Au niveau d’une session
  • Au niveau de l’environnement

Exemples de configurations

Voici un exemple de configuration pour chaque méthode citée précédement.
import requests
import ssl
import os

api_key = os.getenv("PARADIGM_API_KEY")
base_url = os.getenv("PARADIGM_BASE_URL", "https://paradigm.lighton.ai/api/v2")

# Configuration proxy
proxies = {
    'http': 'http://proxy.example.com:port',
    'https': 'https://proxy.example.com:port'
}

# Exemple de requête
response = requests.post(
    f"{base_url}/chat/completions",
    headers={"Authorization": f"Bearer {api_key}"},
    json={"model": "alfred-4.2", "messages": [{"role": "user", "content": "Hello"}]},
    proxies=proxies,
    verify=False
)

print(response.json())
import requests
import os

api_key = os.getenv("PARADIGM_API_KEY")
base_url = os.getenv("PARADIGM_BASE_URL", "https://paradigm.lighton.ai/api/v2")

# Configuration proxy
proxies = {
    'http': 'http://proxy.example.com:port',
    'https': 'https://proxy.example.com:port'
}
session = requests.Session()
session.proxies.update(proxies)
session.verify = False

# Exemple de requête
response = session.post(
    f"{base_url}/chat/completions",
    headers={"Authorization": f"Bearer {api_key}"},
    json={"model": "alfred-4.2", "messages": [{"role": "user", "content": "Hello"}]},
)

print(response.json())
ParamètreDescription
"HTTP_PROXY" "HTTPS_PROXY"Adresse et port du proxy utilisé pour les connexions HTTP(S).
NO_PROXYListe des adresses qui doivent contourner le proxy.
import requests
import os

api_key = os.getenv("PARADIGM_API_KEY")
base_url = os.getenv("PARADIGM_BASE_URL", "https://paradigm.lighton.ai/api/v2")

# Configuration proxy
os.environ["HTTP_PROXY"] = "http://proxy.example.com:port"
os.environ["HTTPS_PROXY"] = "https://proxy.example.com:port"
os.environ["NO_PROXY"] = "localhost,127.0.0.1"

# Exemple de requête
response = requests.post(
    f"{base_url}/chat/completions",
    headers={"Authorization": f"Bearer {api_key}"},
    json={"model": "alfred-4.2", "messages": [{"role": "user", "content": "Hello"}]},
	verify=False
)

print(response.json())

Certificat TLS

Les exemples ci-dessus ont la vérification de certificat TLS désactivée, ce qui ne doit être utilisé qu’à des fins de test.
Lorsque le paramètre verify est défini sur False, les requêtes acceptent tous les certificats TLS présentés par le serveur et ignorent les incompatibilités de nom d’hôte et/ou les certificats expirés, ce qui rend votre application vulnérable aux attaques de type « man-in-the-middle » (MitM). Il peut être utile de définir verify sur False pendant le développement ou les tests en local. Le paramètre verify peut également être une chaîne de caractères, dans ce cas elle doit être un chemin vers un ensemble CA à utiliser. La valeur par défaut est True.
I