easier-openai


Nameeasier-openai JSON
Version 4.216 PyPI version JSON
download
home_pageNone
SummaryUtilities for orchestrating OpenAI chat, tool calling, search, audio, and images from one helper package.
upload_time2025-10-06 23:33:24
maintainerNone
docs_urlNone
authorNone
requires_python>=3.13
licenseNone
keywords openai assistant chat responses audio images vector speech
VCS
bugtrack_url
requirements openai simpleaudio openai_stt typing_extensions whisper ez-openai huggingface-hub pygame
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Easier OpenAI

Easier OpenAI wraps the official OpenAI Python SDK so you can drive modern assistants, manage tool selection, search files, and work with speech in one place.

## What's Included
- Conversational `Assistant` helper with conversation memory and tool toggles.
- Temporary vector store ingestion to ground answers in local notes.
- Built-in helpers for image generation and text-to-speech playback.
- Speech-to-text recording shortcuts for quick dictation.
- Optional `openai_function` decorator re-exported for function tool schemas.

## Installation
```bash
pip install easier-openai
```

Optional extras:
```bash
pip install "easier-openai[function_tools]"   # decorator helpers
pip install "easier-openai[speech_models]"    # whisper speech recognition models
```

Set `OPENAI_API_KEY` in your environment or pass it explicitly when constructing the assistant.

## Quick Start
```python
from easier_openai import Assistant

assistant = Assistant(api_key=None, model="gpt-4o", system_prompt="You are concise.")
response_text = assistant.chat("Summarize Rayleigh scattering in one sentence.")
print(response_text)
```

### Ground replies with your files
```python
notes = ["notes/overview.md", "notes/data-sheet.pdf"]
reply = assistant.chat(
    "Highlight key risks from the attached docs",
    file_search=notes,
    tools_required="auto",
)
print(reply)
```

### Generate speech from responses
```python
assistant.full_text_to_speech(
    "Ship a status update that sounds upbeat",
    model="gpt-4o-mini-tts",
    voice="alloy",
    play=True,
)
```

## Requirements
- Python 3.10 or newer
- `openai>=1.43.0`
- `typing_extensions>=4.7.0`
- `pydantic>=2.0.0`

## Contributing
Issues and pull requests are welcome. Please run checks locally before submitting changes.

## License
This project is licensed under the [Apache License 2.0](LICENSE).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "easier-openai",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.13",
    "maintainer_email": null,
    "keywords": "openai, assistant, chat, responses, audio, images, vector, speech",
    "author": null,
    "author_email": "Advik Mathur <pranit.advik@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/69/a5/0a7fe6dda549997e1341c053c7425d40c44bba5aec123faff7b3ceb13704/easier_openai-4.216.tar.gz",
    "platform": null,
    "description": "# Easier OpenAI\r\n\r\nEasier OpenAI wraps the official OpenAI Python SDK so you can drive modern assistants, manage tool selection, search files, and work with speech in one place.\r\n\r\n## What's Included\r\n- Conversational `Assistant` helper with conversation memory and tool toggles.\r\n- Temporary vector store ingestion to ground answers in local notes.\r\n- Built-in helpers for image generation and text-to-speech playback.\r\n- Speech-to-text recording shortcuts for quick dictation.\r\n- Optional `openai_function` decorator re-exported for function tool schemas.\r\n\r\n## Installation\r\n```bash\r\npip install easier-openai\r\n```\r\n\r\nOptional extras:\r\n```bash\r\npip install \"easier-openai[function_tools]\"   # decorator helpers\r\npip install \"easier-openai[speech_models]\"    # whisper speech recognition models\r\n```\r\n\r\nSet `OPENAI_API_KEY` in your environment or pass it explicitly when constructing the assistant.\r\n\r\n## Quick Start\r\n```python\r\nfrom easier_openai import Assistant\r\n\r\nassistant = Assistant(api_key=None, model=\"gpt-4o\", system_prompt=\"You are concise.\")\r\nresponse_text = assistant.chat(\"Summarize Rayleigh scattering in one sentence.\")\r\nprint(response_text)\r\n```\r\n\r\n### Ground replies with your files\r\n```python\r\nnotes = [\"notes/overview.md\", \"notes/data-sheet.pdf\"]\r\nreply = assistant.chat(\r\n    \"Highlight key risks from the attached docs\",\r\n    file_search=notes,\r\n    tools_required=\"auto\",\r\n)\r\nprint(reply)\r\n```\r\n\r\n### Generate speech from responses\r\n```python\r\nassistant.full_text_to_speech(\r\n    \"Ship a status update that sounds upbeat\",\r\n    model=\"gpt-4o-mini-tts\",\r\n    voice=\"alloy\",\r\n    play=True,\r\n)\r\n```\r\n\r\n## Requirements\r\n- Python 3.10 or newer\r\n- `openai>=1.43.0`\r\n- `typing_extensions>=4.7.0`\r\n- `pydantic>=2.0.0`\r\n\r\n## Contributing\r\nIssues and pull requests are welcome. Please run checks locally before submitting changes.\r\n\r\n## License\r\nThis project is licensed under the [Apache License 2.0](LICENSE).\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Utilities for orchestrating OpenAI chat, tool calling, search, audio, and images from one helper package.",
    "version": "4.216",
    "project_urls": {
        "Documentation": "https://github.com/Adpros7/easier-gpt",
        "Homepage": "https://github.com/Adpros7/easier-gpt",
        "Issues": "https://github.com/Adpros7/easier-gpt/issues",
        "Repository": "https://github.com/Adpros7/easier-gpt"
    },
    "split_keywords": [
        "openai",
        " assistant",
        " chat",
        " responses",
        " audio",
        " images",
        " vector",
        " speech"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bb4b0dea2fa595392e877929cdee1871a050476ff920e52bd130a30273fb8757",
                "md5": "7e40c7e8a1e8c5f679b367af6027a697",
                "sha256": "03964aa170143a0805fac2592ed72a350f07ce58f1c88729b162ad1d035f744f"
            },
            "downloads": -1,
            "filename": "easier_openai-4.216-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7e40c7e8a1e8c5f679b367af6027a697",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.13",
            "size": 17108,
            "upload_time": "2025-10-06T23:33:23",
            "upload_time_iso_8601": "2025-10-06T23:33:23.012317Z",
            "url": "https://files.pythonhosted.org/packages/bb/4b/0dea2fa595392e877929cdee1871a050476ff920e52bd130a30273fb8757/easier_openai-4.216-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "69a50a7fe6dda549997e1341c053c7425d40c44bba5aec123faff7b3ceb13704",
                "md5": "abfe30a1cbc4774ea027638932c4d4c2",
                "sha256": "8cb302738390d867dca601e3b37e45b71e1f05ad2946a0acd04efea0564bbc5e"
            },
            "downloads": -1,
            "filename": "easier_openai-4.216.tar.gz",
            "has_sig": false,
            "md5_digest": "abfe30a1cbc4774ea027638932c4d4c2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.13",
            "size": 19112,
            "upload_time": "2025-10-06T23:33:24",
            "upload_time_iso_8601": "2025-10-06T23:33:24.397314Z",
            "url": "https://files.pythonhosted.org/packages/69/a5/0a7fe6dda549997e1341c053c7425d40c44bba5aec123faff7b3ceb13704/easier_openai-4.216.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-06 23:33:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Adpros7",
    "github_project": "easier-gpt",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "openai",
            "specs": []
        },
        {
            "name": "simpleaudio",
            "specs": []
        },
        {
            "name": "openai_stt",
            "specs": []
        },
        {
            "name": "typing_extensions",
            "specs": []
        },
        {
            "name": "whisper",
            "specs": []
        },
        {
            "name": "ez-openai",
            "specs": []
        },
        {
            "name": "huggingface-hub",
            "specs": []
        },
        {
            "name": "pygame",
            "specs": []
        }
    ],
    "lcname": "easier-openai"
}
        
Elapsed time: 1.79489s