Davit6174 commited on
Commit
75ec2d0
·
verified ·
1 Parent(s): 758294b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -14
app.py CHANGED
@@ -57,37 +57,42 @@ class ZephyrPipelineModel:
57
 
58
  class LangGraphAgent:
59
  def __init__(self):
60
- # Load Zephyr with correct config
61
- self.model = ZephyrPipelineModel()
 
 
 
 
 
 
 
 
 
 
 
 
 
62
 
63
- # Define a simple graph with just one node
64
  builder = StateGraph()
65
 
66
  def call_model(state):
67
  messages = state.get("messages", [])
68
- user_msg = next((m for m in messages if isinstance(m, HumanMessage)), None)
69
- if not user_msg:
70
- return {"messages": messages + [AIMessage(content="❌ No user input found.")]}
71
-
72
- response = self.model(user_msg.content)
73
- return {"messages": messages + [AIMessage(content=response)]}
74
 
75
  builder.add_node("chat", call_model)
76
  builder.set_entry_point("chat")
77
  builder.add_edge("chat", END)
78
 
79
- # Compile the graph
80
  self.graph = builder.compile()
81
 
82
  def __call__(self, question: str) -> str:
83
- # Wrap input in HumanMessage format
84
  result = self.graph.invoke({
85
  "messages": [HumanMessage(content=question)]
86
  })
87
 
88
- # Extract final response
89
- messages = result.get("messages", [])
90
- for msg in reversed(messages):
91
  if isinstance(msg, AIMessage):
92
  return msg.content
93
 
 
57
 
58
  class LangGraphAgent:
59
  def __init__(self):
60
+ # Add token from environment
61
+ hf_token = os.environ.get("HF_TOKEN")
62
+ if not hf_token:
63
+ raise ValueError("HF_TOKEN is not set.")
64
+
65
+ # ✅ Restore this structure with token
66
+ self.model = ChatHuggingFace.from_model_id(
67
+ model_id="HuggingFaceH4/zephyr-7b-beta",
68
+ task="text-generation",
69
+ model_kwargs={
70
+ "temperature": 0.7,
71
+ "max_new_tokens": 512
72
+ },
73
+ huggingfacehub_api_token=hf_token,
74
+ )
75
 
76
+ # Simple LangGraph setup
77
  builder = StateGraph()
78
 
79
  def call_model(state):
80
  messages = state.get("messages", [])
81
+ response = self.model.invoke(messages)
82
+ return {"messages": messages + [response]}
 
 
 
 
83
 
84
  builder.add_node("chat", call_model)
85
  builder.set_entry_point("chat")
86
  builder.add_edge("chat", END)
87
 
 
88
  self.graph = builder.compile()
89
 
90
  def __call__(self, question: str) -> str:
 
91
  result = self.graph.invoke({
92
  "messages": [HumanMessage(content=question)]
93
  })
94
 
95
+ for msg in reversed(result.get("messages", [])):
 
 
96
  if isinstance(msg, AIMessage):
97
  return msg.content
98