카메라 이미지, 동영상, 실시간 피드와 Frigate 이벤트를 멀티모달 LLM으로 분석하는 Home Assistant 통합 구성요소입니다.
jekalmin/extended_openai_conversation
OpenAI 호환 LLM이 기기를 제어하고 서비스를 호출하며 자동화를 만들 수 있도록 하는 Home Assistant 커스텀 컴포넌트입니다.
- 스타
- 1,458
- 포크
- 276
- 열린 이슈
- 129
- 마지막 커밋
- 26일 전
어떤 프로젝트인가요?
Extended OpenAI Conversation은 Home Assistant의 기본 대화 에이전트를 OpenAI의 function calling을 기반으로 하는 에이전트로 대체하는 커스텀 통합입니다. Home Assistant 자체 OpenAI Conversation 통합에서 파생되었으며, 모델이 질문에 답하는 데 그치지 않고 스마트홈을 제어할 수 있도록 도구를 추가합니다.
모델에는 Home Assistant에서 노출한 엔티티가 전달되고, 해당 엔티티에 서비스를 호출할 수 있습니다. 기기 제어 외에도 자연어 요청으로 자동화를 만들고, 엔티티의 상태 이력을 조회하고, REST 엔드포인트나 스크래핑한 웹 페이지에서 데이터를 가져오며, Home Assistant 데이터베이스에 읽기 전용으로 SQLite 쿼리를 실행할 수 있습니다. 커스텀 함수는 YAML에서 사양과 template, script, rest, scrape, composite 등의 함수 유형을 지정해 정의합니다.
Base URL 설정을 사용하면 Azure OpenAI나 LocalAI 같은 OpenAI 호환 서버를 지정할 수 있습니다. HACS를 통해 설치하거나 폴더를 custom_components 디렉터리에 복사해 설치할 수 있습니다.
핵심 기능
- 01function calling을 통해 노출된 엔티티에 Home Assistant 서비스를 호출합니다.
- 02자연어 지시로 자동화를 만듭니다.
- 03엔티티의 상태 이력을 조회합니다.
- 04모델이 사용할 데이터를 REST API나 스크래핑한 웹 페이지에서 가져옵니다.
- 05script 및 template 유형을 포함해 YAML로 정의하는 커스텀 함수를 지원합니다.
- 06Base URL을 설정해 OpenAI 호환 엔드포인트와 연동합니다.
활용 사례
- Home Assistant에서 음성이나 채팅으로 조명, 스위치, 미디어 플레이어를 제어합니다.
- 센서나 기기의 상태가 마지막으로 바뀐 시점을 물어봅니다.
- 평범한 말로 설명한 내용에 따라 어시스턴트가 루틴을 만들도록 합니다.
- Home Assistant를 LocalAI 같은 자체 호스팅 OpenAI 호환 모델에 연결합니다.
빠른 시작
- 1
HACS에서 사용자 지정 저장소로 설치하거나 extended_openai_conversation 폴더를 custom_components에 복사합니다
- 2
Home Assistant를 다시 시작합니다
- 3
설정 > 기기 및 서비스에서 통합을 추가하고 API 키를 입력합니다
- 4
설정 > 음성 어시스턴트에서 대화 에이전트로 Extended OpenAI Conversation을 선택합니다
사용 전 알아둘 점
- 사용자 지정 구성 요소이므로 실행 중인 Home Assistant 인스턴스가 필요합니다.
- OpenAI 또는 OpenAI 호환 서버의 API 키가 필요합니다.
토픽
자주 묻는 질문
- extended_openai_conversation은(는) 무엇인가요?
- OpenAI 호환 LLM이 기기를 제어하고 서비스를 호출하며 자동화를 만들 수 있도록 하는 Home Assistant 커스텀 컴포넌트입니다. Extended OpenAI Conversation은 Home Assistant의 기본 대화 에이전트를 OpenAI의 function calling을 기반으로 하는 에이전트로 대체하는 커스텀 통합입니다. Home Assistant 자체 OpenAI Conversation 통합에서 파생되었으며, 모델이 질문에 답하는 데 그치지 않고 스마트홈을 제어할 수 있도록 도구를 추가합니다.
- extended_openai_conversation은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- extended_openai_conversation은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- extended_openai_conversation은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. extended_openai_conversation의 마지막 커밋은 2026년 10월 11일입니다.
- extended_openai_conversation은(는) 어디에 사용할 수 있나요?
- Home Assistant에서 음성이나 채팅으로 조명, 스위치, 미디어 플레이어를 제어합니다. 센서나 기기의 상태가 마지막으로 바뀐 시점을 물어봅니다. 평범한 말로 설명한 내용에 따라 어시스턴트가 루틴을 만들도록 합니다. Home Assistant를 LocalAI 같은 자체 호스팅 OpenAI 호환 모델에 연결합니다.
- extended_openai_conversation는 어떻게 설치하나요?
- HACS에서 사용자 지정 저장소로 설치하거나 extended_openai_conversation 폴더를 custom_components에 복사합니다 Home Assistant를 다시 시작합니다 설정 > 기기 및 서비스에서 통합을 추가하고 API 키를 입력합니다 설정 > 음성 어시스턴트에서 대화 에이전트로 Extended OpenAI Conversation을 선택합니다
- extended_openai_conversation은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/jekalmin/extended_openai_conversation
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Chat Completions API를 기반으로 Agent와 핸드오프를 활용해 여러 에이전트를 가볍게 오케스트레이션하는 실험적·교육용 Python 프레임워크입니다.
텍스트, 구조화된 데이터, 대화를 위한 여러 AI 제공업체 API를 하나의 간편한 인터페이스로 감싸는 Python 클라이언트 라이브러리입니다.
지원되는 LLM(OpenAI, Anthropic, Ollama, LMStudio)이 자연어로 하나 이상의 MCP 서버 도구를 호출할 수 있게 해주는 Python 라이브러리 및 CLI입니다.
Xiaomi Cloud 또는 로컬 중앙 허브 게이트웨이를 통해 Xiaomi IoT 스마트 기기를 Home Assistant에 연동하는 Xiaomi 공식 통합 기능입니다.
miIO 및 MIoT 프로토콜을 통해 Xiaomi 스마트홈 기기를 제어하는 Python 라이브러리와 miiocli 명령줄 도구입니다.