tg_bot_collections/README.md
yihong0618 0970dedb91 doc: kling
Signed-off-by: yihong0618 <zouzou0208@gmail.com>
2024-07-17 19:27:46 +08:00

166 lines
5.4 KiB
Markdown

# tg_bot_collections
Collections of yihong0618's telegram bot
for yihong0618's channel: https://t.me/hyi0618
## Bot -> poster
![image](https://github.com/yihong0618/tg_bot_collections/assets/15976103/6cf6b2c0-9f43-42f4-ba5f-be768ea27fd1)
## Bot -> pretty mapper
![image](https://github.com/yihong0618/tg_bot_collections/assets/15976103/29848d22-5289-4953-8ab0-4e84c16f79e3)
## Bot -> fake
1. install font wqy-microhei first
2. use `fake: ${message}` to generate
## Bot -> [ChatTTS](https://github.com/2noise/ChatTTS)
1. export USE_CHATTTS=true
2. use `tts: ${message}` to generate
## Bot -> [Kling](https://github.com/yihong0618/klingCreator)
1. export KLING_COOKIE=${cookie}
2. use `kling: ${message}` to generate images
3. use `/kling_pro ${message}` to generate videos
## Bot -> Gemini player
1. visit https://makersuite.google.com/app/apikey get the key
2. export GOOGLE_GEMINI_KEY=${the_key}
3. use `gemini: ${message}` to ask
![telegram-cloud-photo-size-5-6336976091083817765-y](https://github.com/yihong0618/tg_bot_collections/assets/15976103/683a9c22-6f64-4a51-93e6-5e36218e1668)
## Bot -> Claude 3
1. visit https://console.anthropic.com/ get the key
2. export ANTHROPIC_API_KEY=${the_key}
3. use `claude: ${message}` to ask
Note, if you are using third party service, you need to `export ANTHROPIC_BASE_URL=${the_url}` to change the url.
## Bot -> lingyiwanwu
1. visit https://platform.lingyiwanwu.com/apikeys get the key
2. export YI_API_KEY=${the_key}
3. export YI_BASE_URL=${the_url}
3. use `yi: ${message}` to ask
![image](https://github.com/yihong0618/tg_bot_collections/assets/15976103/11d96dde-447b-4b7e-886d-c3564e27b0d6)
## Bot -> ChatGPT
1. visit https://platform.openai.com/account/api-keys get the key
2. export OPENAI_API_KEY=${the_key}
3. use `gpt: ${message}` to ask
Note, if you are using third party service, you need to `export OPENAI_API_BASE=${the_url}` to change the url.
## Bot -> llama3
1. visit https://console.groq.com/docs/quickstart get the key
2. export GROQ_API_KEY=${the_key}
3. use `llama_pro: ${message}` to ask
## Bot -> qwen
1. visit https://api.together.xyz/settings/api-keys get the key
2. export TOGETHER_API_KEY=${the_key}
3. use `qwen_pro: ${message}` to ask
## Bot -> dify
1. visit https://cloud.dify.ai/ get selected Chatbot's API Secret key
2. export DIFY_API_KEY=${the_key}
3. use `dify: ${message}` to ask
Note, currently its support dify Chatbot with instructions(System prompt) and different MODEL with its parameters.
## Bot -> Cohere
1. visit https://dashboard.cohere.com/api-keys get the key
2. export COHERE_API_KEY=${the_key}
3. use `cohere: ${message}` to ask
## Function -> Telegraph
### Skip token (default)
You do not need to do anything.
But you may not be able to edit any generated post since you do not have the token.
### Store token (recommended)
Change "Store_Token" to "True" in "handlers/__init__.py" TelegraphAPI/_create_ph_account. It will store the token in "token_key.json".
### Get token manually from Telegram account
1. https://t.me/telegraph Create or login Telegraph account
2. `Log in as ${Account} on this device`
3. On Browser at https://telegra.ph/, press F12 or right click and inspect
4. Go to Application -> Storage -> Cookies -> https://telegra.ph/
5. The token at `tph_token` is the token for telegra.ph API
Do not share the token with others, it's like a password.
## HOW TO Install and Run
### Manually install
1. pip install -r requirements.txt
2. Get tg token, ask Google or ChatGPT, need get it from [BotFather](https://t.me/BotFather)
3. export GOOGLE_GEMINI_KEY=${your_google_gemini_apikey}
4. python tg.py ${telegram_bot_token}
### Run from Docker
#### build docker image
`docker build -t tg_bot_collections .`
#### Run Gemini
`docker run -d --name tg_bot_collections -e GOOGLE_GEMINI_KEY='${GOOGLE_GEMINI_KEY}' -e TELEGRAM_BOT_TOKEN='${TELEGRAM_BOT_TOKEN}' --network host tg_bot_collections`
#### Run Claude 3
`docker run -d --name tg_bot_collections -e ANTHROPIC_API_KEY='${ANTHROPIC_API_KEY}' -e TELEGRAM_BOT_TOKEN='${TELEGRAM_BOT_TOKEN}' --network host tg_bot_collections`
#### Run lingyiwanwu
`docker run -d --name tg_bot_collections -e YI_API_KEY='${YI_API_KEY}' -e YI_BASE_URL='${YI_BASE_URL}' -e TELEGRAM_BOT_TOKEN='${TELEGRAM_BOT_TOKEN}' --network host tg_bot_collections`
#### Run ChatGPT
`docker run -d --name tg_bot_collections -e OPENAI_API_KEY='${CHATGPT_API_KEY}' -e TELEGRAM_BOT_TOKEN='${TELEGRAM_BOT_TOKEN}' --network host tg_bot_collections`
### Run as shell
Note, this may break your system config -> check this https://github.com/yihong0618/tg_bot_collections/issues/5
## HOW TO Use
1. Type `/gemini: ${message}` to ask
2. Type `gemini: ${message}` and upload picture to ask with picture
> [!Note]
> If you don't want to use one of these command, you can use `--disable-command <command>` option to disable it. This option can be used multiple times.
## Contribution
- Any issue reports or PRs are welcome.
- Before PR, use `pip install -U black` then `black .` first
## Acknowledge
- poster use my repo -> https://github.com/yihong0618/GitHubPoster
- pretty map use wonder repo -> https://github.com/chrieke/prettymapp
- Gemini use -> https://github.com/google/generative-ai-python
- Telegram markdownV2 change code copy from https://github.com/yym68686/md2tgmd/blob/main/src/md2tgmd.py thanks a lot.
- Telegram markdownV2 change to telegramify-markdown
- ChatGPT use -> https://github.com/openai/openai-python
## Appreciation
- Thank you, that's enough. Just enjoy it.