cactus-compute / cactus-compute/needle

False hit on nonsense words

Open
#114 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
11k
Forks
710
Avg merge
1d 21h
Merged PRs (30d)
25

Description

This is my tools.json file.

```
[
{
"name": "light_turn_off",
"description": "Turn off a light.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"all",
"bedroom",
"living_room",
"bathroom",
"kitchen",
"balcony"
]
}
},
"required": [
"device"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_turn_on",
"description": "Turn on an air conditioner.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
}
},
"required": [
"device"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_turn_off",
"description": "Turn off an air conditioner.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
}
},
"required": [
"device"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_set_hvac_mode",
"description": "Set the air conditioner mode.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
},
"hvac_mode": {
"type": "string"
}
},
"required": [
"device",
"hvac_mode"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_set_temperature",
"description": "Set the air conditioner target temperature.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
},
"temperature": {
"type": "number",
"minimum": 16,
"maximum": 55,
"multipleOf": 0.1
}
},
"required": [
"device",
"temperature"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_set_fan_mode",
"description": "Change the air conditioner fan speed.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
},
"fan_mode": {
"type": "string",
"enum": [
"Fan Speed Down",
"Fan Speed Up"
]
}
},
"required": [
"device",
"fan_mode"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_set_swing_mode",
"description": "Set vertical air conditioner swing.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
},
"swing_mode": {
"type": "string"
}
},
"required": [
"device",
"swing_mode"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "climate_set_swing_horizontal_mode",
"description": "Set horizontal air conditioner swing.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"device": {
"type": "string",
"enum": [
"climate.miir_ir02_0672_ir_aircondition_control"
]
},
"swing_horizontal_mode": {
"type": "string"
}
},
"required": [
"device",
"swing_horizontal_mode"
]
},
"policy": {
"early": false,
"resource_keys": [
"device"
]
}
},
{
"name": "fan_turn_on",
"description": "Turn on a fan.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"percentage": {
"type": "number",
"minimum": 0,
"maximum": 100,
"multipleOf": 1
},
"preset_mode": {
"type": "string"
}
}
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_turn_off",
"description": "Turn off a fan.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {}
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_increase_speed",
"description": "Increase fan speed.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {}
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_decrease_speed",
"description": "Decrease fan speed.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {}
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_oscillate",
"description": "Turn fan oscillation on or off.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"oscillating": {
"type": "boolean"
}
},
"required": [
"oscillating"
]
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_set_direction",
"description": "Set fan direction.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"direction": {
"type": "string",
"enum": [
"forward",
"reverse"
]
}
},
"required": [
"direction"
]
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_set_percentage",
"description": "Set fan speed percentage.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"percentage": {
"type": "number",
"minimum": 0,
"maximum": 100,
"multipleOf": 1
}
},
"required": [
"percentage"
]
},
"policy": {
"early": false,
"resource_keys": []
}
},
{
"name": "fan_set_preset_mode",
"description": "Set fan preset mode.",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"preset_mode": {
"type": "string"
}
},
"required": [
"preset_mode"
]
},
"policy": {
"early": false,
"resource_keys": []
}
}
]
```

This is my input prompt.

```
Mu nn rr hh
```

These are the model's matching results.

```
{
"query": "Mu nn rr hh",
"elapsed_ms": 147.5,
"result": {
"type": "call",
"success": true,
"error": null,
"error_code": null,
"reason": null,
"function_calls": [
{
"name": "fan_set_direction",
"arguments": {
"direction": "forward"
}
}
],
"reasoning": "'Mu nn' -> fan_set_direction direction 'forward'. 'rr hh' -> direction 'forward'.",
"confidence": 0.9343,
"prefill_tps": 2792.6,
"decode_tps": 2044.1,
"peak_ram_mb": 49.5,
"validation": {
"ungrounded": [],
"negation": false
}
},
"validation": [
{
"name": "fan_set_direction",
"valid": true,
"errors": []
}
],
"executed": false
}
```

It appears that even meaningless words are being matched with high confidence scores. Is there an issue with how I structured my JSON, and are there ways to optimize this?

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the reported result using the supplied tools.json and the input prompt "Mu nn rr hh"; inspect how the model produces and validates the fan_set_direction call. Compare the confidence, reasoning, and validation output with the intended behavior, and consider the issue done when the cause of the false positive is identified and a regression check demonstrates that meaningless input is not accepted as a valid match.

Written by the indexing model from the issue text.

Assessment

Domain
ai
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.