jekalmin/extended_openai_conversation

Home Assistant custom component of conversation agent. It uses OpenAI to control your devices.

해결하는 문제

이 프로젝트는 Home Assistant용 OpenAI 대화 통합의 강화된 버전을 제공하여, AI 어시스턴트가 단순히 대화를 나누는 것을 넘어서 실제 스마트홈 환경 내에서 작업을 수행할 수 있도록 합니다. 대규모 언어 모델(LLM)과 물리적 장치, 자동화, 외부 데이터 소스 제어 간의 격차를 메웁니다.

작동 방식

이 통합은 OpenAI의 함수 호출 기능을 사용하여 자연어 요청을 특정 Home Assistant 서비스로 매핑합니다. 엔티티를 어시스턴트에 노출함으로써 LLM은 사용 가능한 장치를 식별하고 적절한 서비스를 호출하여 제어할 수 있습니다. 다음의 여러 유형의 함수를 지원합니다:

  • 내장: 서비스 실행, 자동화 추가, 상태 이력 조회를 위한 내장 함수.
  • 스크립트: Home Assistant 서비스의 시퀀스를 실행합니다.
  • 템플릿: 템플릿 기반으로 값을 반환합니다.
  • REST: 외부 API 엔드포인트에서 데이터를 가져옵니다.
  • 스크래핑: 웹사이트에서 정보를 추출합니다.
  • 복합: 여러 함수의 시퀀스를 실행합니다.

대상 사용자

집을 관리하고, 즉각적인 자동화를 생성하며, 외부 웹 데이터와 상호작용할 수 있는 더 강력한 에이전트형 AI 음성 또는 텍스트 어시스턴트를 원하는 Home Assistant 사용자.

주요 기능

  • 직접적인 홈 제어: Home Assistant 서비스를 호출하여 장치를 제어할 수 있습니다.
  • 자동화 생성: 자연어로 새로운 자동화를 생성하고 시스템에 추가할 수 있습니다.
  • 외부 데이터 통합: REST 및 스크래핑을 통해 외부 API 또는 웹 페이지에서 정보를 가져올 수 있습니다.
  • 상태 이력: 엔티티의 이력 데이터를 가져와 분석할 수 있습니다.
  • 사용자 컨텍스트: AI와의 개인화된 상호작용을 위해 현재 사용자의 이름을 전달할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트