diff options
Diffstat (limited to 'scripts/course-daily-update.py')
| -rw-r--r-- | scripts/course-daily-update.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/scripts/course-daily-update.py b/scripts/course-daily-update.py index 4f509d6..4845402 100644 --- a/scripts/course-daily-update.py +++ b/scripts/course-daily-update.py @@ -45,13 +45,18 @@ def parse_json(txt): except Exception: return None def llm(system, user, n=900): - try: - r = requests.post(OLLAMA, json={'model': MODEL, 'stream': False, 'temperature': 0.4, 'max_tokens': n, - 'messages': [{'role': 'system', 'content': system}, {'role': 'user', 'content': user}]}, timeout=180) - if not r.ok: return None - return (r.json().get('choices') or [{}])[0].get('message', {}).get('content') - except Exception: - return None + for model in (MODEL, 'gemma4:31b-cloud'): + try: + r = requests.post(OLLAMA, json={'model': model, 'stream': False, 'temperature': 0.4, 'max_tokens': max(n, 1400), + 'think': False, + 'messages': [{'role': 'system', 'content': system}, {'role': 'user', 'content': user}]}, timeout=180) + if not r.ok: continue + msg = (r.json().get('choices') or [{}])[0].get('message', {}) + content = (msg.get('content') or '').strip() + if content: return content + except Exception: + continue + return None def research(q): try: |