Metadata-Version: 2.4
Name: HandyLLM
Version: 0.10.0
Summary: A handy toolkit for using LLM.
Author-email: Atomie CHEN <atomic_cwh@163.com>
Project-URL: Homepage, https://github.com/atomiechen/HandyLLM
Project-URL: Bug Tracker, https://github.com/atomiechen/HandyLLM/issues
Project-URL: Changelog, https://github.com/atomiechen/HandyLLM/blob/master/CHANGELOG.md
Keywords: LLM,Large Language Model,Prompt,OpenAI,API
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.28.1
Requires-Dist: mergedeep>=1.3.4
Requires-Dist: python-dotenv>=1.0.1
Requires-Dist: python-frontmatter>=1.1.0
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: requests>=2.32.4
Requires-Dist: typing-extensions>=4.13.2
Dynamic: license-file

<div align="middle">
  <img src="https://raw.githubusercontent.com/atomiechen/HandyLLM/main/assets/banner.svg" />
  <p>
    🌟 <b>Support us!</b> <small>If you find HandyLLM useful, please consider <a href="https://github.com/atomiechen/HandyLLM">starring it</a> to help it spread and improve</small> 🌟
  </p>
</div><br>

# HandyLLM

[![GitHub](https://img.shields.io/badge/github-HandyLLM-blue?logo=github)][handyllm-github]
[![PyPI](https://img.shields.io/pypi/v/HandyLLM?logo=pypi&logoColor=white&color=brown)][pypi]
[![vsmarketplace](https://vsmarketplacebadges.dev/version-short/atomiechen.handyllm.svg)][vsmarketplace]
[![Open VSX Version](https://img.shields.io/open-vsx/v/atomiechen/handyllm)][openvsx]
[![sublimepackage](https://img.shields.io/github/v/tag/atomiechen/Sublime-HandyLLM?logo=sublimetext&label=ST%20Package)][sublime]
[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/atomiechen/HandyLLM)

A handy toolkit for using LLM, with both ***development support ([Python][pypi])*** and ***editor support ([VSCode][vsmarketplace] • [VSCode Compatible Editors][openvsx] • [Sublime Text][sublime])***.



## 🙌 Why HandyLLM?

📃 **Handy Prompt**: self-containing prompt in a human-friendly mark-up format `.hprompt`. 

- **Easy write**: mark-up format, placeholder variables, request arguments, output logs... And most importantly syntax highlight!
- **Easy run**: both CLI and APIs available for parsing and running; run it with the CLI tool *WITHOUT* any code! 
- **Easy chain**: You can chain `hprompt` files to construct dynamic logic.

<p float="left" align="center">
  <img width="50%" alt="screenshot_vscode" src="https://raw.githubusercontent.com/atomiechen/vscode-handyllm/main/demo/example.png" />
  <img width="49%" alt="screenshot_st" src="https://github.com/user-attachments/assets/1649511d-67a5-4534-bcc4-8a654257dff5" />
</p>


**Other features:**

☯️ Unified API design with both sync and async support

🍡 OpenAI and Azure APIs all in one

☕️ Easy life with API endpoint management



## Installation

```shell
pip3 install handyllm
```

or, install from the Github repo to get latest updates:

```shell
pip3 install git+https://github.com/atomiechen/handyllm.git
```

For editor support, check the HandyLLM VSCode extension from [marketplace][vsmarketplace] or [Open VSX][openvsx], or the [Sublime Text Package][sublime].



## Documentation

Please check out our [wiki](https://github.com/atomiechen/HandyLLM/wiki) for comprehensive guides ^_^



## License

[HandyLLM][handyllm-github] © 2024 by [Atomie CHEN](https://github.com/atomiechen) is licensed under the MIT License - see the [LICENSE](https://github.com/atomiechen/HandyLLM/blob/main/LICENSE) file for details.


[handyllm-github]: https://github.com/atomiechen/HandyLLM
[pypi]: https://pypi.org/project/HandyLLM/
[vsmarketplace]: https://marketplace.visualstudio.com/items?itemName=atomiechen.handyllm
[sublime]: https://packagecontrol.io/packages/HandyLLM
[openvsx]: https://open-vsx.org/extension/atomiechen/handyllm

