import os, json from openai import OpenAI OPENAI_MODEL=os.getenv("OPENAI_MODEL","gpt-4o-mini") OPENAI_API_KEY=os.getenv("OPENAI_API_KEY") client=OpenAI(api_key=OPENAI_API_KEY) if OPENAI_API_KEY else None SYSTEM_FITPOCKET="""You are FitPocket’s AI coach...""" def ai_call(messages,max_tokens=500,temperature=0.6): if not client: return None return client.chat.completions.create(model=OPENAI_MODEL,temperature=temperature,max_tokens=int(os.getenv("OPENAI_MAX_OUTPUT_TOKENS",str(max_tokens))),messages=[{"role":"system","content":SYSTEM_FITPOCKET}]+messages) def ai_json(prompt,max_tokens=900): r=ai_call([{"role":"user","content":prompt}],max_tokens=max_tokens,temperature=0.6) if not r: return None txt=r.choices[0].message.content or "" import json as _j try: return _j.loads(txt) except: r2=ai_call([{"role":"user","content":prompt+"\nReturn ONLY valid JSON. No prose."}],max_tokens=max_tokens,temperature=0.3) if not r2: return None txt2=r2.choices[0].message.content or "" try: return _j.loads(txt2) except: return None