Powered by Exa - The Web Search API & OpenAI's GPT-OSS-120B
App Link: https://demo.exa.ai/gpt-oss-chat
Exa & GPT-OSS Chat App is a free and open-source chat application that combines Exa's powerful web search API with OpenAI's GPT-OSS-120B - the open-source language model from OpenAI, hosted on Together AI.
This app provides a modern chat experience with real-time web search capabilities, featuring a clean UI with collapsible "thinking" sections that show the model's reasoning process before delivering the final answer.
- Language Model: OpenAI GPT-OSS-120B - Open source model hosted on Together AI
- Search Engine API: Exa API - Web search API designed for LLMs
- Frontend: Next.js 14 with App Router, TailwindCSS, TypeScript
- AI Integration: Vercel AI SDK with Together AI provider
- Hosting: Vercel
- Node.js 18+
- Together AI API key (for GPT-OSS-120B)
- Exa API key
- Clone the repository
git clone https://github.com/your-username/gpt-oss-chat.git
cd gpt-oss-chat
- Install dependencies
npm install
- Set up environment variables
Create a
.env.local
file in the root directory:
TOGETHER_AI_API_KEY=your_together_ai_api_key_here
EXA_API_KEY=your_exa_api_key_here
- Run the development server
npm run dev
- Open http://localhost:3000/gpt-oss-chat in your browser
- Get your key: Together AI API Keys
- What it's for: Access to OpenAI's GPT-OSS-120B model hosted on Together AI
- Environment variable:
TOGETHER_AI_API_KEY
- Get your key: Exa Dashboard
- What it's for: Real-time web search capabilities
- Environment variable:
EXA_API_KEY
# Together AI - for GPT-OSS-120B model
TOGETHER_AI_API_KEY=your_together_ai_api_key_here
# Exa - for web search
EXA_API_KEY=your_exa_api_key_here
⭐ About Exa
This project is powered by Exa.ai, a web search API designed specifically for AI applications. Exa provides:
- AI-Optimized Search: Search results relevant for language model consumption
- Real-time Information: Current web data to enhance AI responses
- Easy Integration: Simple API designed for AI workflows
gpt-oss-chat/
├── app/
│ ├── api/
│ │ └── chat/
│ │ └── route.ts # Chat API endpoint with Exa integration
│ ├── components/
│ │ └── messages.tsx # Markdown message rendering
│ ├── fonts/ # Custom font files
│ ├── globals.css # Global styles
│ ├── layout.tsx # Root layout with metadata
│ └── page.tsx # Main chat interface
├── package.json
└── README.md
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
Built with ❤️ by Exa