https://github.com/waheed444/synchronous_openai_sdk_agent
This project demonstrates the Synchronous Agent system by OpenAI SDK using Google Gimini , which is a modular design pattern that allows AI components like Gemini API Integration | OpenAI-Compatible SDK | Agent System | Async Model Support | Custom Instructions | User Input Handling | Natural Language Response | Chainlit for UI | Console Output
https://github.com/waheed444/synchronous_openai_sdk_agent
google-g openai-agents openai-agents-sdk openai-chatcompletion openai-sdk python
Last synced: 5 months ago
JSON representation
This project demonstrates the Synchronous Agent system by OpenAI SDK using Google Gimini , which is a modular design pattern that allows AI components like Gemini API Integration | OpenAI-Compatible SDK | Agent System | Async Model Support | Custom Instructions | User Input Handling | Natural Language Response | Chainlit for UI | Console Output
- Host: GitHub
- URL: https://github.com/waheed444/synchronous_openai_sdk_agent
- Owner: waheed444
- Created: 2025-05-06T02:20:43.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2025-05-06T18:35:05.000Z (5 months ago)
- Last Synced: 2025-05-06T19:46:14.937Z (5 months ago)
- Topics: google-g, openai-agents, openai-agents-sdk, openai-chatcompletion, openai-sdk, python
- Language: Python
- Homepage:
- Size: 25.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🤖 Synchronous OpenAI SDK Agent using Gimini
[](https://opensource.org/licenses/MIT)
[](https://www.python.org/)
[](https://github.com/waheed444/Synchronous_OpenAI_SDK_Agent)## Table of Contents 🚀
* [Documentation](https://openai.github.io/openai-agents-python/running_agents/)
* [Description](#description)
* [Features](#features)
* [Installation](#installation)
* [Use-Cases](#Use-Cases)
* [Contributing](#contributing)
* [License](#license)## Description
The OpenAI Agents SDK enables you to build agentic AI apps in a lightweight, easy-to-use package with very few abstractions.This AI Synchronous OpenAI SDK Agent demonstrates how to build a simple AI assistant by integrating Google’s Gemini API through an OpenAI-compatible interface Synchronously. It makes use of an Agent system, which is a modular design pattern that allows AI components to behave autonomously—processing inputs, following specific instructions, and generating intelligent responses.This means you can use familiar OpenAI-like syntax and logic, but with Gemini models under the hood.## 🔁 Why Use Synchronous Execution?
1. **Simplicity**
Synchronous code is easier to write, read, and debug. Each line executes in order, making the flow predictable.
2. **Step-by-Step Flow**
The code waits for each operation (like receiving the agent's response) to complete before moving to the next step.
3. **No Need for Concurrency**
For simple, single-threaded tasks like one-time prompts or input/output, synchronous execution is efficient and straightforward.4. **Reliable Output Handling**
Using `Runner.run_sync()` ensures the model response is fully retrieved before it’s used or printed, avoiding incomplete outputs.---
### Use-Cases
- ✅ Command-line interface (CLI) tools
- ✅ Quick prototypes or demos
- ✅ Educational scripts and learning examples
- ✅ Single-user applications
- ✅ Testing or debugging model outputs
- ✅ Low-traffic tools that don’t require high performance---
## Project Features
* 🤖 **Custom AI Agent:** Built using the Agent and Runner pattern for modularity and scalability.
* 🌐 **Google Gemini 2.0 Flash Integration:** Utilizes Google's API for access to the powerful Gemini language model.
* 🔑 **Secure API Key Management:** Employs `python-dotenv` for safe and convenient API key handling.
* 🧠 **Dynamic Prompt Handling:** Processes and responds effectively to a wide range of user prompts.
* ⚡ **Asynchronous Communication:** Leverages `AsyncOpenAI` for optimized asynchronous communication with OpenAI, improving speed and responsiveness.
* 🐍 **Clean Python Codebase:** Maintained with a focus on readability, modularity, and best practices.## Prerequisites
Before getting started, make sure you have the following:
- **Python 3.8+** installed on your system.
- Basic knowledge of Python programming.
- Familiarity with virtual environments and dependency management.
- Git installed to clone the repository.---
## Installation
1. **Clone the Repository:**
```bash
git clone https://github.com/waheed444/Synchronous_OpenAI_SDK_Agent.git
cd Synchronous_OpenAI_SDK_Agent
```2. **Create and Activate a Virtual Environment:**
```bash
python -m venv venv
source venv/bin/activate # For Windows: venv\Scripts\activate
```3. **Install Dependencies:**
```bash
pip install -r requirements.txt
```
**OR Install Dependencies:**
```bash
pip install openai-agents python-dotenv```
*(If a requirements file is not available, check `pyproject.toml` for dependency instructions.)*
4. **Set up `.env` file:**
Create a `.env` file in the root directory and add your Gemini API key:
```
GIMINI_API_KEY = your_actual_gemini_api_key_here
```**Note:** Replace `your_actual_gemini_api_key_here` with your actual Gemini API key.
5. **Run the Agent**
After setting up the project, you can run the AI agent by executing the `main.py` file.
For Example:
```
python main.py
```More detailed usage instructions and example prompts will be provided in the project's documentation.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contributing
We welcome contributions to improve this project! Please follow these steps:1. **Fork** the repository.
2. **Create a new branch:** `git checkout -b feature-name`
3. **Make your changes** and ensure they adhere to the project's coding style and best practices.
4. **Commit your changes:** `git commit -m "Add feature"`
5. **Push to the branch:** `git push origin feature-name`
6. **Submit a pull request** with a clear description of your changes and their benefits.
If you find any issues or want to improve this project, feel free to open a [GitHub issue](https://github.com/waheed444/Synchronous_OpenAI_SDK_Agent/issues) or submit a pull request.This repo is only for learning and exploring new things, feel free to fork it, explore, or give suggestions!
**Star ⭐ the repo if it helps you!**
---
## 🙌 Let's Connect
---