semvec/pypi-packages huggingface dataset:
Open-ChatGPT-Plugins 0.1.0
An open-source project aimed at building an open and diversified ecosystem for chatbot plugins.
License: MIT
Requires Python: >=3.6.0


# Open-ChatGPT-Plugins 😎

Open-ChatGPT-Plugins 是一个开源项目🌟，旨在构建一个开放和多元化的聊天机器人插件生态系统。本项目使得开发者可以轻松地为 ChatGPT 模型增添新的功能和交互体验✨。

## 背景 📚

OpenAI 在开发者大会上推出了 GPT-4 Turbo，提出了“Assistants”概念。这被开发者视为面向大众版本（非插件开发者）的插件商城。随着 GPT-4 Turbo 上下文长度的增加及其高理解能力，我们可以基于这些特性复刻 ChatGPT-Plugins 的能力，从而构建一个开源本地版本的 ChatGPT-Plugins。

## 特点 💡

1. 与其他工具项目不同，本项目完全适配 ChatGPT-Plugins 的 API 服务。这意味着如果你之前为 ChatGPT-Plugins 编写过 API，那么你可以直接使用本项目与之前的 API 服务对接，无需二次开发🚀。
2. 无需购买 ChatGPT Plus 即可体验 Plugins 服务🎉。

## 安装 🔧

要安装此插件所需的软件包，请运行以下命令：

```shell
pip install -r requirements.txt
```

## 使用方式 🖥️

- 第一种：上传 API 的 YAML 文件

```python
assistant = Assistants(yaml_file_path='../openai.yaml', tools_model='gpt-4-1106-preview', openai_api_key='sk-xxxx')
print(assistant.run('请您查一下贵州茅台的昨天股票历史数据'))
```

- 第二种：通过 Assistant ID 使用

```python
assistant = Assistants(assistant_id='eafa9807-7cff-4afb-b069-ce3437c076fb', tools_model='gpt-4-1106-preview', openai_api_key='sk-xxxx')
print(assistant.run('请您查一下贵州茅台的昨天股票历史数据'))
```

- 第三种：更新 YAML 文件

```python
assistant = Assistants(yaml_file_path='../openai.yaml', assistant_id='eafa9807-7cff-4afb-b069-ce3437c076fb', tools_model='gpt-4-1106-preview', openai_api_key='sk-xxxx')
print(assistant.run('请您查一下贵州茅台的昨天股票历史数据'))
```

注意：需要先运行 API 服务。API 服务可参考 [StockMarketAssistant](https://github.com/XingYu-Zhong/StockMarketAsisstant) 项目🔗。

## 原理 🤖

本项目通过复刻 ChatGPT-Plugins，需要一个 YAML 文件来说明接口，一个 YAML 对应一个 Assistant 的初始化。主要流程包括：

- 阅读 YAML 文件，根据文件描述创建一个 Assistant。
- 开启一个线程。
- 先进行工具推荐（recommend tools）。
- 结合推荐列表制定计划（plan）。
- 按计划逐步调用。
- 结合每一步的结果生成最终结果。

### TODO List:

- 检测 YAML 文件是否符合要求（待完成）📝。
- 集成 Streamlit UI（待完成）🖌️。

## 📝 许可证
MIT License 
免责声明：我们根据 MIT 教育许可出于学术目的共享此代码。
yc1175-indicator 0.1.1
A library to control the yc1175 indicator in Sonoff iHost
License: MIT
Requires Python: >=3.10,<4.0
Keywords: yc11752,ihost,indicator

# YC1175 Indicator - Sonoff iHost

A library that implements the serial protocol for communication with the
indicator module on the Sonoff iHost. This module controls the 4 buttons
and the main RGB indicator.

**WARNING: This is only useful if you have flashed linux or HAOS on your iHost.**

## Installation

`pip install yc1175-indicator`


## CLI Usage
For convience you can control the LED's from the CLI wrapper.  
```sh
$ indicator-cli <led_index> --effect <effect_num> --rgb <rgb tuple>
```

Example:  
```sh
$ indicator-cli 4 --effect 2 --rgb 0 0 255
```

Print LED and effect codes:
```sh
$ indicator-cli --list
```


## Library Usage
```python
import asyncio
from yc1175_indicator import indicator

async def test_callback(idx, event):
    print(f"Button press: {idx}, type: {event}")

async def main():
    my_yc = indicator.HassAPI()
    await my_yc.setup()
    my_yc.register_event_callback(test_callback)

    rgb =  (0,0,255)
    yc.light_on(4, 1, rgb)
    try:
        # wait for button press
        await asyncio.sleep(30)
    except asyncio.CancelledError:
        pass
    yc.light_off(4)

if __name__ == "__main__":
    asyncio.run(main())
```

## Support

If you would like to help support further development of my `HAOS for iHost` project consider buying me a coffee!

<a href="https://www.buymeacoffee.com/darkxst" target="_blank"><img src="img/blue-button.png" alt="Buy Me A Coffee" height="41" width="174"></a>
geoquiz 0.1.7
A game where you have
License: MIT
Requires Python: >=3.10,<4.0

# Country Shape Quiz

## Name the country from its shape!! 
This is a Python quiz application that allows users to take a quiz with questions displayed alongside images. 
Users can input their answers, and the application will provide feedback on whether the answers are correct or not. 

![alt text](images/screenshot1.png)


## Installation

### Requirements

- Python (>= 3.10)

### Install using pipx

```bash
pipx install geoquiz
```

## Accessing the App

To access the app, open your terminal and type the following command:

```bash
geoquiz
```

## Usage

1. **Start Quiz**
   - Click on the "Start Quiz" button to begin.

2. **Handling Mistakes**
   - If you make a mistake, you have two options:
     - Click on the "Show Answer" button to reveal the correct answer.
     - Choose not to show the correct answer.

3. **Choose Display Order**
   - Select the order in which countries should appear:
     - Increasing Difficulty
     - Random Order

4. **Set the Number of Countries**
   - Choose the number of countries to appear in the quiz:
     - All countries
     - 10 countries
     - Enter a custom number in the provided box

5. **Start Playing**
   - Type the correct country names in the answer box.
   - Minor spelling mistakes are forgiven.


## Acknowledgments

- All the images are imported from geojson files obtained from [https://geojson-maps.ash.ms/](https://geojson-maps.ash.ms/), 
[geoBoundaries](https://www.geoboundaries.org/index.html) and [https://maps.princeton.edu/catalog/stanford-sn252ts8433](https://maps.princeton.edu/catalog/stanford-sn252ts8433) 

- Audio files used :  [https://freesound.org/people/Mudkip2016/sounds/423930/](https://freesound.org/people/Mudkip2016/sounds/423930/), [https://freesound.org/people/Gronkjaer/sounds/554053/](https://freesound.org/people/Gronkjaer/sounds/554053/)