An open API service indexing awesome lists of open source software.

https://github.com/zaidmukaddam/o3-mini-search


https://github.com/zaidmukaddam/o3-mini-search

Last synced: 4 months ago
JSON representation

Awesome Lists containing this project

README

          

# O3 Mini Search

An interactive command-line AI assistant that combines OpenAI's o3-mini model with web search capabilities to provide informed responses with citations.

## Features

- Interactive command-line interface
- Real-time streaming of AI responses
- Web search integration
- Response formatting with citations
- Tool-based architecture for extensibility

## Prerequisites

- Node.js (v16 or higher)
- npm or yarn
- OpenAI API key (Get it from [OpenAI Platform](https://platform.openai.com/api-keys))
- Tavily API key (Get it from [Tavily AI](https://app.tavily.com/))

## Setup

1. Clone the repository:
```bash
git clone https://github.com/zaidmukaddam/o3-mini-search.git
cd o3-mini-search
```

2. Install dependencies:
```bash
npm install
```

3. Create a `.env` file in the root directory with the following variables:
```
OPENAI_API_KEY=your_openai_api_key_here
TAVILY_API_KEY=your_tavily_api_key_here
```

4. Build the TypeScript project:
```bash
npm run build
```

## Usage

Start the application:
```bash
npm start
```

The assistant will prompt you for input. Type your questions or queries, and the assistant will:
1. Perform relevant web searches
2. Process the information
3. Provide a response with citations

## Project Structure

- `src/index.ts` - Main application entry point
- `src/tools/` - Custom tools implementation (e.g., web search)
- `.env` - Environment variables configuration
- `tsconfig.json` - TypeScript configuration
- `package.json` - Project dependencies and scripts

## Dependencies

- `@ai-sdk/openai` - OpenAI API integration
- `ai` - AI utilities and types
- `dotenv` - Environment variables management
- Other dependencies as specified in package.json

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.