Загрузка...

Script
DeepSeek Wrapper

Thread in Python created by Lebowsky13 Dec 21, 2025. (bumped Mar 13, 2026) 487 views

  1. Lebowsky13
    Lebowsky13 Topic starter Dec 21, 2025 14 Mar 25, 2025
    Приветствую :smile_victory:


    Делал себе домашнего мульти Аi агента, чтобы бесплатно и много, и накидал обёртку на DeepSeek.
    Так как агент будет расширяться, решил сделать обёртку отдельно, чтобы было понятно и более-менее правильно.
    Ну и решил поделится, возможно кому будет полезно поиграться, а мб кто-то учит Playwright и питон, и это станет полезным примером,
    потому-что обёртка максимально простая.



    Всё это дело работает через playwright
    Автоматически логиниться на deepseek
    Сохраняет сессию и не нужно каждый раз входить заново
    Может работать в несколько окон (диалогов)
    Процесс установки через poetry описан на GitHub
    https://github.com/NYXBAM/DeepSeekWrapper
    А так же пример использования показан в файле

    Не вижу смысла тут повторять процесс установки
    Но для танкистов:
    Code
    git clone https://github.com/NYXBAM/DeepSeekWrapper.git
    cd DeepSeekWrapper

    pip install poetry
    # или лучший вариант через pipx
    pipx install poetry
    # ставим зависимости
    poetry install
    # Активируем виртуальное окружения
    # У вас это может быть другой путь, после poetry install покажет путь к вирт. окружению
    source .venv/bin/activate
    # Устанавливаем браузер firefox
    poetry run playwright install firefox
    # создаем окружение для переменных (для логина и пароля)
    nano .env

    # сюда логин и пароль без пробелов
    # DEEPSEEK_LOGIN=
    # DEEPSEEK_PASSWORD=



    И дальше просто в своем коде импортируем и пользуемся.
    Python
    import asyncio
    from client.ds_cli import DeepSeekClient, DeepSeekFlow
    from config import CONFIG


    async def single_client_example():
    """
    Example 1: Single DeepSeekClient usage.
    Classic flow with one client, one session.
    """
    client = DeepSeekClient(**CONFIG)
    try:
    await client.start_session(headless=True)
    flow = DeepSeekFlow(client=client)
    response = await flow.run_query("Ты кто?")
    print("Single client response:\n", response)
    except Exception as e:
    print("Error in single client example:", e)
    P.S
    Буду рад любым правкам и предложениям.
    Код не самый лучший, простите, есть некоторое вопросы, которые я бы хотел пофиксить,
    но под мои задачи (администрирование серверов) мне хватает
    код возможно будет улучшатся по мере роста моего личного агента.
    Пользуйтесь друзья
    И с наступающим Новым Годом!
     
  2. Luxide
    Luxide Dec 22, 2025 28 Sep 2, 2022
    Разве у дипсика нету каких либо проверок на ботов cloudflare forbidden и прочих?
     
    1. Lebowsky13 Topic starter
      avatarLuxide, да вроде не встречал пока что
  3. xappytl
    xappytl Dec 29, 2025 1 Nov 11, 2025
    Годно
     
  4. Lebowsky13
    Lebowsky13 Topic starter Jan 28, 2026 14 Mar 25, 2025
    Добавил элементарное API:

    Всё это едет на Redis + Celery, процесс установки не изменился, но теперь ещё нужно поставить Redis дополнительно

    Эндопоинтов 3:

    POST /query
    вот с таким Body:

    Code
    {
    "prompt": "Explain quantum physics to a five-year-old."
    }
    POST /web/query аналогично первому, но с включенным поиском в интернете.


    На оба запроса прилетает task_id
    Чтобы получить результат, нужно обратится к эндпоинту

    GET /result/{task_id}

    Ничего сложного нет, API примитивное, для внутреннего использования.

    + пофиксил баги с логином. DS сменили интерфейс немного.
     
Loading...