abdoh-alkhateeb commited on
Commit
8b6a021
1 Parent(s): e3b702e

Create outline_agent.py

Browse files
Files changed (1) hide show
  1. outline_agent.py +23 -0
outline_agent.py ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from langchain_community.callbacks import get_openai_callback
2
+ from langchain_core.prompts import PromptTemplate
3
+ from langchain_openai import ChatOpenAI
4
+
5
+ from prompts.outline_agent import template
6
+
7
+
8
+ class OutlineAgent:
9
+ def __init__(self, model: str = "gpt-4-1106-preview", temperature: float = 0.3) -> None:
10
+ self._prompt = PromptTemplate(input_variables=["query"], template=template)
11
+
12
+ self._llm = ChatOpenAI(model=model, temperature=temperature)
13
+
14
+ self._chain = self._prompt | self._llm
15
+
16
+ def run(self, query: str) -> tuple[str, dict]:
17
+ with get_openai_callback() as cb:
18
+ accountability = self._chain.invoke({"query": query}).content.strip()
19
+
20
+ tokens = cb.total_tokens
21
+ cost = cb.total_cost
22
+
23
+ return accountability, {"tokens": tokens, "cost": cost}