forked from Pavel_Durov/python_bot
dsfs
This commit is contained in:
parent
4c520b39fe
commit
1533c5eb91
@ -1,4 +1,4 @@
|
||||
import openai
|
||||
from openai import AsyncOpenAI
|
||||
from aiogram import types
|
||||
from create_bot import dp, bot
|
||||
import logging
|
||||
@ -6,69 +6,59 @@ from global_conf import CONFIG
|
||||
|
||||
admins = CONFIG['telegram_admins_ids']
|
||||
|
||||
openai.api_key = "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"
|
||||
|
||||
|
||||
ban_comands = ['/dick','/topdick']
|
||||
|
||||
# Image_promt =['тупица сгенерируй','тупица сгенерируй картинку',\
|
||||
# 'тупица отправь картинку', 'тупица отправь картинку']
|
||||
client = AsyncOpenAI(api_key="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")
|
||||
|
||||
# @dp.message_handler(commands=['image'])
|
||||
# async def send_image(message: types.Message):
|
||||
# if message.from_user.id in admins and message.chat.type == 'private':
|
||||
# try:
|
||||
# description = message.text.replace('/image', '').strip()
|
||||
|
||||
# if not description:
|
||||
# await message.reply('Ты даун, описание запроса напиши после пробела')
|
||||
# return
|
||||
# except Exception as e:
|
||||
# logging.error(f'Error in send_image: {e}')
|
||||
# try:
|
||||
|
||||
# response = openai.Image.create(
|
||||
# prompt=message.text,
|
||||
# n=1,
|
||||
# size="1024x1024",
|
||||
# response_format="url",
|
||||
|
||||
# )
|
||||
# image_url = response['data'][0]['url']
|
||||
# await message.answer('Генерирую изображение...')
|
||||
# await message.reply_photo(image_url)
|
||||
# except Exception as e:
|
||||
# await message.reply('у меня не получилось')
|
||||
|
||||
|
||||
@dp.message_handler(commands=['image'])
|
||||
async def send_image(message: types.Message):
|
||||
if message.from_user.id in admins and message.chat.type == 'private':
|
||||
try:
|
||||
description = message.text.replace('/image', '').strip()
|
||||
|
||||
if not description:
|
||||
await message.reply('Ты даун, описание запроса напиши после пробела')
|
||||
return
|
||||
except Exception as e:
|
||||
logging.error(f'Error in send_image: {e}')
|
||||
try:
|
||||
|
||||
response = openai.Image.create(
|
||||
prompt=message.text,
|
||||
n=1,
|
||||
size="1024x1024",
|
||||
response_format="url",
|
||||
|
||||
async def gpt_text(req):
|
||||
completion = await client.chat.completions.create(
|
||||
messages=[
|
||||
{
|
||||
"role": "user",
|
||||
"content": req,
|
||||
}
|
||||
],
|
||||
model="gpt-4",
|
||||
)
|
||||
image_url = response['data'][0]['url']
|
||||
await message.answer('Генерирую изображение...')
|
||||
await message.reply_photo(image_url)
|
||||
except Exception as e:
|
||||
await message.reply('у меня не получилось')
|
||||
return completion
|
||||
|
||||
@dp.message_handler()
|
||||
async def send(message: types.Message):
|
||||
if message.from_user.id in admins and message.chat.type == 'private':
|
||||
|
||||
## TODO уточнить остатки токенов и денег
|
||||
response = openai.ChatCompletion.create(
|
||||
model="gpt-4",
|
||||
prompt=message.text,
|
||||
temperature=0.7,
|
||||
max_tokens=1000,
|
||||
top_p=1.0,
|
||||
frequency_penalty=0.0,
|
||||
presence_penalty=0.6,
|
||||
stop=["сброс"]
|
||||
)
|
||||
await message.reply(response['choices'][0]['text'])
|
||||
|
||||
elif message.reply_to_message.from_user.is_bot:
|
||||
response = openai.Completion.create(
|
||||
model="gpt-4-turbo",
|
||||
prompt=message.text,
|
||||
temperature=0.7,
|
||||
max_tokens=1000,
|
||||
top_p=1.0,
|
||||
frequency_penalty=0.0,
|
||||
presence_penalty=0.6,
|
||||
stop=["сброс"]
|
||||
)
|
||||
await message.reply(response['choices'][0]['text'])
|
||||
response = await gpt_text(message.text)
|
||||
await message.answer(response.choices[0].message.content)
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user