OppaAI commited on
Commit
f3167fb
·
verified ·
1 Parent(s): 07ea75f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -2
app.py CHANGED
@@ -76,6 +76,9 @@ def safe_parse_json_from_text(text: str):
76
  # -------------------------------
77
  # TRUE CORE FUNCTION
78
  # -------------------------------
 
 
 
79
  def robot_watch_core(payload: Dict[str, Any]):
80
  if isinstance(payload, str):
81
  try:
@@ -103,7 +106,8 @@ Respond in STRICT JSON ONLY.
103
  {
104
  "description": "...",
105
  "human": "...",
106
- "environment": "..."
 
107
  }
108
  """
109
 
@@ -121,7 +125,7 @@ Respond in STRICT JSON ONLY.
121
  resp = client.chat.completions.create(
122
  model=HF_VLM_MODEL,
123
  messages=messages,
124
- max_tokens=300,
125
  temperature=0.1
126
  )
127
  except Exception as e:
@@ -137,6 +141,11 @@ Respond in STRICT JSON ONLY.
137
  "message": "Invalid JSON returned"
138
  }
139
 
 
 
 
 
 
140
  return {
141
  "status": "success",
142
  "robot_id": robot_id,
@@ -145,10 +154,12 @@ Respond in STRICT JSON ONLY.
145
  "description": parsed.get("description"),
146
  "human": parsed.get("human"),
147
  "environment": parsed.get("environment"),
 
148
  "vlm_raw": vlm_output
149
  }
150
 
151
 
 
152
  # -------------------------------
153
  # REGISTER MCP TOOL (wrapper)
154
  # -------------------------------
 
76
  # -------------------------------
77
  # TRUE CORE FUNCTION
78
  # -------------------------------
79
+ # -------------------------------
80
+ # TRUE CORE FUNCTION (with objects)
81
+ # -------------------------------
82
  def robot_watch_core(payload: Dict[str, Any]):
83
  if isinstance(payload, str):
84
  try:
 
106
  {
107
  "description": "...",
108
  "human": "...",
109
+ "environment": "...",
110
+ "objects": [] // list of detected objects
111
  }
112
  """
113
 
 
125
  resp = client.chat.completions.create(
126
  model=HF_VLM_MODEL,
127
  messages=messages,
128
+ max_tokens=500,
129
  temperature=0.1
130
  )
131
  except Exception as e:
 
141
  "message": "Invalid JSON returned"
142
  }
143
 
144
+ # Ensure "objects" is a list
145
+ objects = parsed.get("objects", [])
146
+ if not isinstance(objects, list):
147
+ objects = []
148
+
149
  return {
150
  "status": "success",
151
  "robot_id": robot_id,
 
154
  "description": parsed.get("description"),
155
  "human": parsed.get("human"),
156
  "environment": parsed.get("environment"),
157
+ "objects": objects, # ← new field
158
  "vlm_raw": vlm_output
159
  }
160
 
161
 
162
+
163
  # -------------------------------
164
  # REGISTER MCP TOOL (wrapper)
165
  # -------------------------------