Inspiration
Perplexity OSS was inspired by the need for a self-hosted, privacy-first AI search engine with capabilities on par with premium offerings like Perplexity AI, but without vendor lock-in or high costs. The rapid evolution of LLMs and web-search agents has unlocked the power of streaming, cited answers. Most platforms, however, compromise on data control, transparency, or affordability. Perplexity OSS solves this using open technologies and Amazon Bedrock's Nova models, orchestrated through custom Lyzr AI agents—delivering smart, source-cited responses with full data sovereignty and flexible deployment
What it does
- AI-powered search: Combines live web results from SearXNG with Amazon Bedrock-powered Lyzr agents to give users intelligent, source-cited answers and related questions.
- Real-time streaming: Delivers answers in real time, token-by-token, for near-instant feedback.
- Use case flexibility: Handles simple factual queries and complex, multi-step research through dual Simple and Pro search modes.
- Citation and source tracking: Every answer comes with verifiable sources, improving trust and transparency.
- User control: All search, answer generation, and metadata handling happen on self-hosted infrastructure for total privacy and enterprise compliance.
What Makes It Unique
- Enterprise-grade, self-hosted: Bring your own compute and manage access.
- Streaming answers: Cited in real time for transparency.
- Open-source backend: Customizable agent framework.
- Dual search modes: Simple for fast answers; Pro for multi-step, deep reasoning ((n)-step).
How we built it
System Architecture
- Frontend: Next.js (TypeScript, Tailwind), streaming support for real-time answers.
- Backend: FastAPI (Python), manages Lyzr agents and Amazon Bedrock Nova models for answer synthesis.
- SearXNG: Meta-search for privacy-protected crawling.
- Agents: Five specialized Lyzr AI agents for rephrasing, synthesis, related questions, multi-step queries, and search optimization.
- Deployment: Docker Compose with persistent agent configuration and auto-creation.
- Streaming: Server-Sent Events (SSE) for live token responses.
- Authentication: Lyzr Agent Studio API Key.
Challenges we ran into
- Agent orchestration: Synchronizing configs for fast, reliable answer synthesis.
- Streaming performance: Engineering token-level Server-Sent Events streaming for optimal UX.
- Privacy: Zero data leakage via sandboxed, self-hosted agents.
- Multi-step search: Recursive “Pro Search” logic for deep queries and reliable fallback.
- Cost optimization: Balancing Bedrock Nova Lite and Pro for cost-to-quality efficiency.
- User Experience: Seamless UI, easy auth, fast startup, and rich related question features.
Accomplishments that we're proud of
- End-to-end streaming: Built a solution that streams AI-generated answers in real time, significantly improving user experience.
- Agent modularity: Designed agent configs so the entire system is easy to extend, customize, and experiment with, setting the stage for adaptable enterprise use.
- Seamless deployment: Achieved true one-command Docker deployment, lowering the barrier to adoption and enabling rapid evaluation.
- Privacy-first architecture: Ensured self-hosting is possible with zero data leaks by keeping all logic and search entirely on user infrastructure.
- User-driven features: Added related-question auto-generation and dual search modes to empower both quick fact checks and deep research.
- Open-source impact: Released the backend and agent configs for public use, enabling community collaboration and contribution.
What we learned
Building Perplexity OSS involved:
- LLM orchestration: Multi-agent design for answer composition and query breakdown.
- Web meta-search: Federating SearXNG for privacy-respecting web search.
- Real-time streaming: Serving answers token-by-token via FastAPI & Next.js for low-latency UX.
- Containerized architecture: Reliable deployment using Docker Compose—one-command setup for enterprise use.
What's next for Perplexity OSS by Lyzr
- Advanced multi-agent reasoning: Expanding the agent framework to support more sophisticated collaborative planning, enabling deeper research and conversational intelligence.
- Support for custom LLMs: Integrating additional model sources (including open-source and smaller/private LLMs) so organizations can choose the optimal blend of cost, privacy, and performance.
- Enhanced data connectors: Adding plugins for enterprise document search (internal wikis, shared drives, cloud storage) to make Perplexity OSS a one-stop research platform.
- Fine-grained permissions & audit logs: Bringing advanced access controls, role-based management, and activity tracking for compliance in sensitive business environments.
- Mobile & desktop apps: Developing native applications to allow instant AI-powered searching from any device, supporting workforce mobility.
- Rich analytics dashboard: Building tools for monitoring, analyzing, and optimizing both search quality and system performance.
- Automated updates & agent marketplace: Streamlining updates, and enabling a community-driven ecosystem of third-party agents and extensions.
- Multilingual and multimodal support: Incorporating text, image, and document understanding.
- Deeper API integrations: Facilitating seamless connections with chatbots, digital assistants, and popular enterprise platforms.
- Agentic AI Browser Capability: We are laying the groundwork to build a fully agentic AI browser experience—envisioning capabilities akin to Comet Assistant. This will empower users to automate complex workflows, intelligently interact with and control browser content, and transform raw web browsing into truly conversational, task-driven experiences.
The goal: to make Perplexity OSS by Lyzr the most customizable, privacy-respecting, enterprise-grade AI search platform—with groundbreaking agentic browser features—open to everyone.
Built With
- amazon-web-services
- bedrock
- css
- fastapi
- javascript
- jwt
- lyzragentstudio-api
- next.js
- python
- restapi
- searxng
- sse
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.