Make openai conversation prompt template more readable + test case (#86676)
This commit is contained in:
parent
021ac84405
commit
ff91fb7d74
2 changed files with 19 additions and 8 deletions
|
@ -7,17 +7,17 @@ DEFAULT_PROMPT = """This smart home is controlled by Home Assistant.
|
||||||
|
|
||||||
An overview of the areas and the devices in this smart home:
|
An overview of the areas and the devices in this smart home:
|
||||||
{%- for area in areas %}
|
{%- for area in areas %}
|
||||||
{%- set area_info = namespace(printed=false) %}
|
{%- set area_info = namespace(printed=false) %}
|
||||||
{%- for device in area_devices(area.name) -%}
|
{%- for device in area_devices(area.name) -%}
|
||||||
{%- if not device_attr(device, "disabled_by") and not device_attr(device, "entry_type") %}
|
{%- if not device_attr(device, "disabled_by") and not device_attr(device, "entry_type") %}
|
||||||
{%- if not area_info.printed %}
|
{%- if not area_info.printed %}
|
||||||
|
|
||||||
{{ area.name }}:
|
{{ area.name }}:
|
||||||
{%- set area_info.printed = true %}
|
{%- set area_info.printed = true %}
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
- {{ device_attr(device, "name") }}{% if device_attr(device, "model") not in device_attr(device, "name") %} ({{ device_attr(device, "model") }}){% endif %}
|
- {{ device_attr(device, "name") }}{% if device_attr(device, "model") not in device_attr(device, "name") %} ({{ device_attr(device, "model") }}){% endif %}
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
|
|
||||||
Answer the users questions about the world truthfully.
|
Answer the users questions about the world truthfully.
|
||||||
|
|
|
@ -50,6 +50,17 @@ async def test_default_prompt(hass, mock_init_component):
|
||||||
model="Test Model 3A",
|
model="Test Model 3A",
|
||||||
suggested_area="Test Area 2",
|
suggested_area="Test Area 2",
|
||||||
)
|
)
|
||||||
|
device = device_reg.async_get_or_create(
|
||||||
|
config_entry_id="1234",
|
||||||
|
connections={("test", "9876-disabled")},
|
||||||
|
name="Test Device 3",
|
||||||
|
manufacturer="Test Manufacturer 3",
|
||||||
|
model="Test Model 3A",
|
||||||
|
suggested_area="Test Area 2",
|
||||||
|
)
|
||||||
|
device_reg.async_update_device(
|
||||||
|
device.id, disabled_by=device_registry.DeviceEntryDisabler.USER
|
||||||
|
)
|
||||||
|
|
||||||
with patch("openai.Completion.create") as mock_create:
|
with patch("openai.Completion.create") as mock_create:
|
||||||
await conversation.async_converse(hass, "hello", None, Context())
|
await conversation.async_converse(hass, "hello", None, Context())
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue