Легкий путь в Python
5.8K subscribers
145 photos
23 videos
3 files
182 links
Я Алексей Яковенко, senior-разработчик Python. Здесь вы найдете статьи, заметки, посты и видео для прокачки навыков программирования. Интересно и новичку, и профи 💡

По вопросам: https://t.me/yakvenalexx
Download Telegram
​​Как создать бота на aiogram 3.x с использованием вебхуков (webhook) и FastApi

В этой статье мы рассмотрим, как легко создать телеграм-бота на aiogram 3.x, используя вебхуки вместо метода long polling. За основу мы возьмем FastApi. Если вы хотите улучшить производительность своего бота, это руководство будет вам полезно!

#ТелеграммБоты #FastApi #Хабр
👍7
​​Наверное, настоло время выйти из сумрока) Последние пару лет активно занимаюсь коммерческой разработкой на Python. Чаще всего пишу телеграмм ботов, парсеры и обработчики больших данных.

Зачастую приходится перерабатывать сотни тысяч строк записей за короткие промежутки времени.

Для себя выбрал из SQL баз данных PostgreSQL. Использую везде где может потребоваться база данных. А что, удобно. При помощи того же Docker можно развернуть ее за пару минут, а после универсально пользоваться под любой проект.

Для того чтоб было проще асинхронно ходить по PostgreSQL - написал свою библиотеку. Базируется она на SQLAlchemy (в народе алхимия), но в своем синтаксисе использует только стандартный питоновский синтаксис (ну, может, за исключением импорта типа данных у колонок).

Библиотека доступна прямо сейчас для установки через pip / pip3, а с полным ее описанием (инструкцией для пользования) вы сможете ознакомиться тут 👇
❤5👍3🔥2
​​Простой способ взаимодействия с Google Таблицами через Python (Gspread)

В этой статье я рассмотрел самый простой и доступный метод взаимодействия с Google Таблицами (Google Sheets) с использованием Python. Прочитав, вы узнаете, как создать сервисный аккаунт в Google, который будет выполнять все операции, а также познакомитесь с базовыми операциями работы с Google Таблицами: чтением, записью, удалением и обновлением данных. Давайте погрузимся в увлекательный мир автоматизации и упростим работу с вашими данными с помощью Python и Gspread!
❤2👍1👏1
Развертывание локальной версии нейросети LLaMA с использованием Docker

Привет! В этом руководстве я покажу, как в несколько команд развернуть локальную версию нейросети LLaMA на вашем компьютере или сервере (работает на Windows, macOS и любых дистрибутивах Linux).

Шаг 1: Установка Docker

Для начала, установите Docker. Новичкам рекомендуется установить Docker Desktop.

Шаг 2: Запуск Docker контейнера

Откройте консоль и выполните следующую команду:

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

Эта команда развернет локальный образ llama, который будет работать исключительно на вашем процессоре. Также существует вариант использования Nvidia GPU, с инструкциями можно ознакомиться здесь.

Шаг 3: Запуск языковой модели

Для запуска самой модели выполните команду:

docker exec -it ollama ollama run llama3:8b

Эта команда загрузит и запустит языковую модель llama3:8b (4.7GB). Также доступна более крупная версия llama3, 70b (40GB). Вы можете запускать и другие модели, список которых доступен здесь.

Чтобы запустить другую модель, используйте команду:

docker exec -it ollama ollama run model_name:tag


Интеграция в проекты

Использование языковой модели в таком формате может показаться неудобным. Более интересно интегрировать ее в свои проекты, например, в Telegram-бота с использованием Python.

Если вам интересно, как это сделать, подписывайтесь на меня. В следующем посте я покажу, как использовать локальную нейросеть (llama3) в Python проектах, включая создание Telegram-бота.
👍5🔥2❤1
Самый быстрый и простой способ развернуть Docker-контейнер со своим Python проектом

Привет! Для того чтобы воспользоваться данным способом, у вас должны быть:

1. VPS сервер
2. Написанный Python проект
3. Установленный на сервере Docker
4. Аккаунт на GitHub

Небольшие настройки

Для начала в корне проекта необходимо создать Dockerfile. Вот мой пример:

FROM python

WORKDIR /usr/src/app

# Копируем и устанавливаем зависимости Python
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt

# Копируем все файлы из текущей директории в рабочую директорию контейнера
COPY . .

# Команда запуска контейнера
CMD ["python", "aiogram_run.py"]


Шаги для развертывания

1. Помещаем все данные проекта в свой репозиторий на GitHub.

2. Заходим на VPS сервер.

Создаем там папку:

mkdir my_project
cd my_project


Выполняем git pull проекта с GitHub:

git clone https://github.com/username/repo.git .


Создаем свой именной образ:

docker build -t my_image_name .

docker run -it -d --env-file .env --restart=unless-stopped --name container_name my_image_name


В данном примере я запускал телеграмм-бота, который использует файл .env. Тут вы видите, как привязать env-file к рабочему контейнеру.

Просмотр логов

Для того чтобы посмотреть на консоль бота, достаточно выполнить команду:

docker attach container_name


Для выхода из интерактивного режима воспользуйтесь комбинацией клавиш CTRL+P, CTRL+Q.

Если было полезно – подписывайтесь и ставьте лайки!
❤5👍2👏1