chat method
Add context_content, and prefix to the
chat() method from
previous script, 01-
first vid from playlist page
context_content, calls all registered context functions,.. ? don't get quite yet
class chat(self, user_message: str) ->: self.messages.append({"role":"User","content": user_message}) context_content = "\n\n".join( f"<context>\n<{fn()}<{n}><\n</context>" for n, fn in self.contexts.items() ) prefix = list[dict[str,Any]] = [ {"role":"system","content":self.system_prompt}, {"role":"system","content",context_content}, ]
keep the url, headers, request
context_content, calls all registered context functions,.. ? don't get quite yet
class chat(self, user_message: str) ->: self.messages.append({"role":"User","content": user_message}) context_content = "\n\n".join( f"<context>\n<{fn()}<{n}><\n</context>" for n, fn in self.contexts.items() ) prefix = list[dict[str,Any]] = [ {"role":"system","content":self.system_prompt}, {"role":"system","content",context_content}, ] url = f"{self.base_url}/chat/completions headers = { "Authorization": f"Bearer:{self.api_key}", "Content-Type": "application.json", } = requests.post( url, headers=headers, json={"model": self.model, "messages", prefix + self.messages}, timeout=300, ) r.raise_for_status() data = r.json() choices = data.get("choices") if not choices: raise RuntimeError("Model response missing choices") message = choices[0].get("message") if message is None: raise RuntimeError("response missing message") response = message[0].get("content") or "" self.messages.append({"role":"assistant","content": response}) return response