API Setup Guide
GLM-Image Team•15 min read•Intermediate
Integrating GLM-Image into your Python workflow unlocks powerful automation capabilities. This guide walks you through every step—from initial setup to production-ready implementation.
Prerequisites
- Python 3.8 or higher
- GLM-Image API key
- requests library (or aiohttp for async)
Basic Implementation
import os
import requests
class GLMImageClient:
def __init__(self, api_key):
self.api_key = api_key
self.base_url = "https://api.glm-image.com/v1"
def generate(self, prompt, **kwargs):
headers = {'Authorization': f'Bearer {self.api_key}'}
payload = {'prompt': prompt, 'width': 1024, 'height': 1024}
response = requests.post(f"{self.base_url}/generate", json=payload, headers=headers)
return response.json()['url']
# Usage
client = GLMImageClient("your_api_key")
url = client.generate("A sunset over mountains")Advanced Features
Batch Processing
def generate_batch(prompts, max_workers=3):
from concurrent.futures import ThreadPoolExecutor
with ThreadPoolExecutor(max_workers=max_workers) as executor:
results = list(executor.map(client.generate, prompts))
return results
# Process 5 prompts
prompts = ["A dragon", "A castle", "A knight", "A forest", "A sword"]
results = generate_batch(prompts)Integration Patterns
Flask Web App
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/api/generate', methods=['POST'])
def generate_image():
data = request.json
prompt = data.get('prompt')
url = client.generate(prompt)
return jsonify({'url': url})Production Checklist
✓
Store API keys securely (environment variables)✓
Implement rate limiting (max 10 req/sec)✓
Add comprehensive error handling✓
Monitor API usage and costs