Muszę zwrócić się jednak o pomoc brak stanu sensora text

Witam próbuje utworzyć sensor który będzie miał informacje w postaci text.Probowalem wspomóc się czatgpt ale ciągle mija się w koło.

Przy ręcznym wywołaniu usługi wyświetla mi się text ,
z wywołania usługi przesyłam poniżej.

action: google_generative_ai_conversation.generate_content
data:
  prompt: opisz
  image_filename: /config/www/img/kamera.jpg

Jak próbuje utworzyć sensor →
sensor.generated_description wyświetla się stan unkown.

Próbowałem dodawać dane sensora do sensor.yaml oraz template.yaml i wszędzie występuje unkown stan

platform: template
    sensors:
      generated_description:
        friendly_name: "Generated"
        unit_of_measurement: ""  # Pusta jednostka, ponieważ opis nie jest liczbą
        value_template: "{{ state_attr('google_generative_ai_conversation.google_generative_ai', 'response_text') }}"
        

A tutaj sensor w template.yaml

  - name: generated_description

    unit_of_measurement: ' '
    state: >
      {{ state_attr('google_generative_ai_conversation.google_generative_ai', 'response_text') }}      

Jeżeli nic do tego sensora nie jest aktualnie przesłane sensor będzie posiadał taki stan.

Lub masz złe formatowanie.
sensor: !include_dir_list ../entities/sensors

platform: template
sensors:
  spotify_artist:
    friendly_name: "Spotify - Artist"
    value_template: "{{ state_attr('media_player.spotify_pc_artur', 'media_artist') }}"

Już zgłupiałem to ma być w template.yaml czy sensor.yaml ? Oczywiście kdrazu odpowiadam że nie mam nic porobione z dir…

Nadal unkown

platform: template
sensors:
  ai_test:
    friendly_name: "test"
    value_template: "{{ state_attr('google_generative_ai_conversation.google_generative_ai', 'response_text') }}"

Jak zawsze półsłówkami…

To w takim razie najlepiej żebyś konfigurował sobie w configuration.yaml, a potem przeniósł do pliku docelowego.

Wpisz jakikolwiek inny sensor który posiada attr i sprawdź.

Pojawił się sensor poziomu baterii

  - name: bateriaaaaa

    unit_of_measurement: '%"
    state: >
      {{ state_attr('sensor.drzwi_alarm_battery', 'battery') }}      

To stary i nierekomendowany format, proponuje zacząć używać nowego Template - Home Assistant, oszczędzisz sobie sporo problemów a możliwości jest zdecydowanie więcej. Na forum masz przykład - Zamiana atrybutu encji w osobną encję - #2 przez macek. Jeżeli sobie nie poradzisz, daj znać, pomogę :slight_smile:.

To teraz sprawdź google_generative_ai_conversation.google_generative_ai
atrybut response_text czy posiada jakieś dane → Narzędzia Developerskie → Stany → atrybuty

właśnie nie posiada ani text ani response_text.
@macek mam wszystko zrobione w nowym formacie , tylko czasami się mi myli.

posiada tylko te 2

friendly_name: Google Generative AI
supported_features: 1

jak ręcznie wyzwole akcje Google Generative AI: Generate content i wskazę link do zdjecia z kamery to wszystko działa i mówi co widzi

text: >-
  Widzę nocny obraz z kamery bezpieczeństwa. Pokazuje on zaśnieżony podjazd i
  część ulicy. Na podjeździe zaparkowane są dwa samochody. Widoczny jest również
  płot oddzielający podjazd od ulicy. Na ulicy jeżdżą samochody. W tle widzę
  świąteczne oświetlenie. Na obrazku widnieje data i godzina: 2025-01-03
  17:17:41.

tylko jak to upakować zeby przychodziło powiadomienie

tak tez nie działa

alias: PlateKam
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_boolean.obraz
    from: "off"
    to: "on"
conditions: []
actions:
  - action: camera.snapshot
    metadata: {}
    data:
      filename: config/www/kamera/kamera.jpg
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - action: google_generative_ai_conversation.generate_content
    metadata: {}
    data:
      image_filename: config/www/kamera/kamera.jpg
      prompt: co widzisz na zdjęciu
  - action: notify.mobile_app_moto_g200_5g
    metadata: {}
    data:
      message: "{{ generated_content['text'] }}"
mode: single
Rejestrator: homeassistant.components.automation.platekam
Źródło: components/automation/__init__.py:764
integracja: Automatyzacja (dokumentacja, Problemy)
Pierwsze zdarzenie: 18:17:29 (1 zdarzenia)
Ostatnio zalogowany: 18:17:29

Error while executing automation automation.platekam: Script requires 'response_variable' for response data for service call google_generative_ai_conversation.generate_content

Zgodnie z dokumentacją Google Generative AI - Home Assistant powinno być:

- action: google_generative_ai_conversation.generate_content
  data:
    prompt: co widzisz na zdjęciu 
    image_filename: config/www/kamera/kamera.jpg
  response_variable: generated_content
Message malformed: template value is None for dictionary value @ data['actions'][2]['data'
alias: PlateKam
alias: PlateKam
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_boolean.obraz
    from: "off"
    to: "on"
conditions: []
actions:
  - action: camera.snapshot
    metadata: {}
    data:
      filename: config/www/kamera/kamera.jpg
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - action: google_generative_ai_conversation.generate_content
  data:
    prompt: co widzisz na zdjęciu 
    image_filename: config/www/kamera/kamera.jpg
  response_variable: generated_content
  - action: notify.mobile_app_moto_g200_5g
    metadata: {}
    data:
      message: "{{ generated_content['text'] }}"
mode: single

@oomichalekoo jezeli Twój kod wygląda dokładnie jak na pokazałeś to jest błędny ponieważ nie masz zachowanej składni yaml - brak odpowiednich odstepów - każda jedna spacja ma znaczenie.
Popatrz na mój przykład, ze spacjami:


Proponuje do edycji plików yam korzystać z Notepad+.
Bez poprawnej skladni yaml dalsza pomoc nie ma sensu, sorry, tak to działa.

Poprawiłem

alias: PlateKam
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_boolean.obraz
    from: "off"
    to: "on"
conditions: []
actions:
  - action: camera.snapshot
    metadata: {}
    data:
      filename: config/www/kamera/kamera.jpg
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - action: google_generative_ai_conversation.generate_content
    data:
      prompt: co widzisz na zdjęciu
      image_filename: config/www/kamera/kamera.jpg 
    response_variable: generated_content
  - action: notify.mobile_app_moto_g200_5g
    metadata: {}
    data:
      message: "{{ generated_content['text'] }}"
mode: single

Błąd z logów

Error while executing automation automation.platekam: Script requires 'response_variable' for response data for service call google_generative_ai_conversation.generate_content
Error while executing automation automation.platekam: must contain at least one of entity_id, device_id, area_id, floor_id, label_id

Pokaż kod yaml z tego wywołania akcji.

action: google_generative_ai_conversation.generate_content
data:
  prompt: opisz wszystko
  image_filename: /config/www/kamera/kamera.jpg

Tutaj wszystko działa

W automatyzacji masz image_filename: config/www/kamera/kamera.jpg , popraw i daj znac

Też nie

alias: PlateKam
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_boolean.obraz
    from: "off"
    to: "on"
conditions: []
actions:
  - action: camera.snapshot
    metadata: {}
    data:
      filename: /config/www/kamera/kamera.jpg
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - action: google_generative_ai_conversation.generate_content
    data:
      prompt: co widzisz na zdjęciu
      image_filename: /config/www/kamera/kamera.jpg
    response_variable: generated_content
  - action: notify.mobile_app_moto_g200_5g
    metadata: {}
    data:
      message: "{{ generated_content['text'] }}"
mode: single

Najwidoczniej problem jest z ostatnim etapem wysyłka na telefon 2 pierwsze automatyzację przechodzą bez problemu
Błąd jak próbuje ręcznie wyzwolić wysłanie na telefon.

Error rendering data template: UndefinedError: 'generated_content' is undefined

Jak usunolem text to przyszło puste powiadomienie teraz

Nie wiem skad to wziąłeś ale tam gdzie ja to znalazłem, później jest zamiana na:

 message: " {{ generated_content.text }} " 

Sprawdź.

Nie działa

action: notify.mobile_app_moto_g200_5g
metadata: {}
data:
  message: " {{ generated_content.text }} "

Tutaj znalazłem taką podpowiedź

if:
  - condition: template
    value_template: >
        {{ generated_content['text'] == 'Camera has detected motion however no obvious motion observed comparing snapshots' }} 
then:
  - stop: ""
else:
  - service: notify.mobile_app_adams_iphone_15_pro_max
    metadata: {}
    data:
      title: Driveway 1a Motion Detected
      message: "{{generated_content['text'] }}"
      data:
        image: /local/snapshots/driveway1_snapshot2.jpg

A co dostajesz na telefon przy takim wpisie: message: " {{ generated_content.text }} " ?
Prosty test: co dostaniesz dla: message: Teraz jest {{now().strftime("%H:%M")}} - {{generated_content.text}} ?