chipling's picture
Upload 17 files
af5e18d verified
import httpx
class TogetherImageAPI:
headers = {
'sec-ch-ua-platform': '"macOS"',
'Authorization': 'Bearer 869f5ecd80fc6482ccb99f37179cb2c162879925224ae9d91caffc35d9b534b3',
'Referer': 'https://api.together.ai/playground/image/black-forest-labs/FLUX.1-dev',
'sec-ch-ua': '"Google Chrome";v="135", "Not-A.Brand";v="8", "Chromium";v="135"',
'sec-ch-ua-mobile': '?0',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36',
'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json',
}
def __init__(self):
self.name = "TogetherImageAPI"
self.url = "https://api.together.ai/inferences"
def get_model_list(self):
models = [
"black-forest-labs/FLUX.1-dev",
]
return models
async def generate(self, json_data):
print(json_data)
model = json_data['modelId']
prompt = json_data['prompt']
negative_prompt = json_data.get('negative_prompt', '')
width = json_data.get('width', 1024)
height = json_data.get('height', 768)
steps = json_data.get('steps', 28)
data = {
'model': model,
'prompt': prompt,
'negative_prompt': negative_prompt,
'width': width,
'height': height,
'steps': steps,
'n': 1,
'response_format': 'b64_json',
'stop': [],
}
async with httpx.AsyncClient() as client:
response = await client.post("https://api.together.ai/inference", json=json_data)
if response.status_code == 200:
return response.json()
else:
raise Exception(f"Error: {response.status_code} - {response.text}")