Perplexity integration for Home Assistant.
You can install this integration manually or via HACS.
To configure integration in Home Assistant, go to Settings >> Devices & services >> Add integration >> Perplexity or use My Home Assistant link.
To generate API key go to https://www.perplexity.ai/account/api/keys
Now you can add Perplexity conversation agent or AI task configuration.
To configure Perplexity as a conversation agent for you Voice assistant:
-
Go to Settings >> Voice assistants or use My Home Assistant link.
-
Select Add assistant.
-
Enter the assistant's name and select one of the Perplexity presets as the Conversation agent.
-
Now you can customize your conversation agent settings.
-
You can use the Perplexity AI task for AI suggestions in the Home Assistant interface. Go to Settings >> General.
Perplexity integration supports:
- Conversation platform (beta)
- AI Task platform
- Fast, Low, Medium and High Perplexity presets (Agent API); see what each preset does
- optional reasoning effort configuration (minimal, low, medium, high, extra high) for every preset; leave it empty to use the preset default
- control of entities exposed to Assist through Home Assistant's LLM tools (the Assist API), the same way the built-in AI integrations work
- live entity state through the
GetLiveContexttool, so the assistant can answer questions about your home - timers and delayed commands (for example, turn off the light in 10 minutes) on voice devices that support timers; Home Assistant's default agent runs the delayed command when the timer ends
Perplexity retired the Sonar models, so the integration now uses the Perplexity Agent API and you choose a preset instead of a model. Existing entries are migrated automatically: sonar and sonar-pro become Fast, and sonar-reasoning-pro becomes Low. Presets always search the web, so the web search option is gone. If you see "Failed to connect" with a valid API key, upgrade the integration to the latest version.
action: ai_task.generate_data
data:
task_name: Weather Description
entity_id: ai_task.fast
instructions: >-
Based on this {{ states.weather.home }} and an image create short weather
description (ONLY ONE SENTENCE).Response:
The sky is overcast with dark, ragged clouds on this chilly January morning, threatening rain and a brisk wind.
action: ai_task.generate_data
data:
task_name: Number of cars
entity_id: ai_task.fast
instructions: In the attached photo, count the cars in the parking lot.
attachments:
media_content_id: media-source://camera/camera.parking
media_content_type: application/vnd.apple.mpegurl
metadata:
title: parking
thumbnail: /api/camera_proxy/camera.parking
media_class: video
navigateIds:
- media_content_type: app
media_content_id: media-source://camera
structure:
car_count:
required: true
selector:
number:Response:
data:
car_count: 42To debug the integration add this to your logger configuration:
# configuration.yaml file
logger:
default: warning
logs:
custom_components.perplexity: debug
perplexity: debuggit clone https://github.com/bieniu/ha-perplexity.git
cd ha-perplexity
scripts/setup-local-env.sh