|
|
|
import requests |
|
import os |
|
from emotion_filter import rewrite_with_persona |
|
|
|
API_TOKEN = os.getenv("neko") |
|
API_URL = "https://api-inference.huggingface.co/models/rinna/japanese-gpt-neox-3.6b" |
|
|
|
headers = { |
|
"Authorization": f"Bearer {API_TOKEN}" |
|
} |
|
|
|
def call_external_api(input_text): |
|
try: |
|
payload = { |
|
"inputs": input_text, |
|
"parameters": { |
|
"max_new_tokens": 100, |
|
"temperature": 0.8, |
|
"do_sample": True |
|
} |
|
} |
|
response = requests.post(API_URL, headers=headers, json=payload, timeout=30) |
|
response.raise_for_status() |
|
generated = response.json() |
|
|
|
if isinstance(generated, list) and "generated_text" in generated[0]: |
|
raw_text = generated[0]["generated_text"] |
|
return rewrite_with_persona(raw_text, emotion="gentle") |
|
else: |
|
return "[API応答形式が不明です]" |
|
except Exception as e: |
|
return f"[Hugging Face APIエラー] {str(e)}" |
|
|