Spaces:
Sleeping
Sleeping
File size: 1,015 Bytes
877add2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import requests
import os
class MistralInference:
def __init__(self, api_url: str, api_token: str):
self.api_url = api_url.rstrip("/")
self.headers = {
"Authorization": f"Bearer {api_token}",
"Content-Type": "application/json"
}
def generate(self, prompt: str, temperature: float = 0.7, max_tokens: int = 512) -> str:
payload = {
"inputs": prompt,
"parameters": {
"temperature": temperature,
"max_new_tokens": max_tokens,
"return_full_text": False
}
}
response = requests.post(
f"{self.api_url}/generate",
headers=self.headers,
json=payload
)
if response.status_code != 200:
raise RuntimeError(f"Request failed: {response.status_code} - {response.text}")
data = response.json()
return data["generated_text"] if "generated_text" in data else data[0]["generated_text"] |