Авторизуйте IP сервера
Список открывается только с адресов, которые вы добавили в кабинете. Ключ API остаётся в вашем коде, прокси лишь несёт соединение.
Работа с ИИ в объёме — это много запросов к API и страниц, часто из региона, где сервис доступен. Advanced.name даёт пулы IPv4 по одной ссылке с авторизацией по IP сервера, поэтому нагрузка на ChatGPT, Claude или Midjourney идёт из нужной страны и распределяется по адресам, а не по одному.
Две вещи решают ИИ-конвейер: дотянуться до сервиса и не складывать все вызовы на один адрес.
Доступ из региона, где API отвечает
Пулы Микс Мира, Европа, СНГ и Китай; страну берите из CSV-выгрузки
Много адресов под большой объём вызовов
От 5 000 до 50 000 IP в пакете, около трети меняется ежедневно
Потоки под параллельные запросы и парсинг
От 500 до 5 000 потоков в зависимости от пакета, все протоколы на одном порту
Никакого счётчика на промпты, картинки и страницы
Трафик не считается ни на одном безлимитном пакете
Регион, пакет, срок. Цена за один авторизованный IP, каждый дополнительный IP добавляет 10%.
Список открывается только с адресов, которые вы добавили в кабинете. Ключ API остаётся в вашем коде, прокси лишь несёт соединение.
Возьмите страну из CSV-выгрузки, чтобы сервис видел местный разрешённый адрес. Микс Мира даёт самый широкий пул.
Загрузите список, берите следующий адрес на каждый вызов и повторяйте через другой при задержке. Скрипт ниже делает это на стандартной библиотеке.
Задайте API_URL, свой API_KEY и MODEL, положите по промпту на строку в prompts.txt. Каждый вызов идёт через следующий прокси и повторяется через другой при задержке; ответы пишутся в CSV. Используйте только с ключами и сервисами, к которым у вас есть доступ. Пул проверяйте прокси-чекером.
#!/usr/bin/env python3
"""Rotating-proxy client for OpenAI-compatible chat APIs (Advanced.name proxies).
Sends each prompt from a file to a chat API through a different proxy, with
retries, and writes the answers to a CSV. Use it only with an API key and a
service you are authorised for. Standard library only. Run: python3 ai_calls.py
"""
# ================================ CONFIG ====================================
CSV_URL = "https://get.advanced.name/YOUR_LIST_ID.csv" # CSV export link from your dashboard
COUNTRY = "" # ISO code where the service is available, or "" for the whole pool
MIN_SPEED = 3
API_URL = "https://api.openai.com/v1/chat/completions" # OpenAI-compatible endpoint you may use
API_KEY = "YOUR_API_KEY" # your own key; it stays in this file, never in the proxy
MODEL = "gpt-4o-mini" # model name the endpoint expects
PROMPTS_FILE = "prompts.txt" # one user prompt per line
OUT_FILE = "answers.csv" # prompt;answer;proxy is written here
THREADS = 20
TIMEOUT = 30
RETRIES = 3
# ============================================================================
import csv
import io
import itertools
import json
import sys
import threading
import urllib.request
from concurrent.futures import ThreadPoolExecutor, as_completed
COL_IP, COL_PORT, COL_COUNTRY, COL_SPEED = 0, 1, 2, 3
def load_proxies():
raw = urllib.request.urlopen(CSV_URL, timeout=30).read().decode("utf-8", "replace")
pool = []
for row in csv.reader(io.StringIO(raw), delimiter=";"):
if len(row) <= COL_SPEED or not row[COL_PORT].strip().isdigit():
continue
if COUNTRY and row[COL_COUNTRY].strip().upper() != COUNTRY.upper():
continue
if int(row[COL_SPEED] or 0) < MIN_SPEED:
continue
pool.append(row[COL_IP].strip() + ":" + row[COL_PORT].strip())
return pool
def ask(prompt, proxy):
body = json.dumps({"model": MODEL, "messages": [{"role": "user", "content": prompt}]}).encode()
handler = urllib.request.ProxyHandler({"http": "http://" + proxy, "https": "http://" + proxy})
req = urllib.request.Request(API_URL, data=body, method="POST", headers={
"Authorization": "Bearer " + API_KEY, "Content-Type": "application/json"})
data = json.loads(urllib.request.build_opener(handler).open(req, timeout=TIMEOUT).read())
return data["choices"][0]["message"]["content"].strip()
def main():
proxies = load_proxies()
if not proxies:
sys.exit("No proxies for COUNTRY=%r." % COUNTRY)
with open(PROMPTS_FILE, encoding="utf-8") as fh:
prompts = [line.strip() for line in fh if line.strip() and not line.startswith("#")]
print("proxies: %d (%s), prompts: %d, threads: %d" % (len(proxies), COUNTRY or "any", len(prompts), THREADS))
rotation = itertools.cycle(proxies)
lock = threading.Lock()
def run(prompt):
for _ in range(RETRIES):
with lock:
proxy = next(rotation)
try:
return prompt, ask(prompt, proxy), proxy
except Exception:
continue
return prompt, "error: unreachable", ""
rows = []
with ThreadPoolExecutor(max_workers=THREADS) as pool:
for fut in as_completed([pool.submit(run, p) for p in prompts]):
prompt, answer, proxy = fut.result()
rows.append((prompt, answer, proxy))
print("%-40s %s" % (prompt[:40], (answer[:50] + "...") if len(answer) > 50 else answer))
with open(OUT_FILE, "w", encoding="utf-8", newline="") as out:
writer = csv.writer(out, delimiter=";")
writer.writerow(["prompt", "answer", "proxy"])
writer.writerows(rows)
print("written %s (%d rows)" % (OUT_FILE, len(rows)))
if __name__ == "__main__":
main()
Большинство SDK и HTTP-клиентов принимают прокси на запрос. В Python с requests задайте proxies={'http': 'http://ip:port', 'https': 'http://ip:port'}; SDK OpenAI и Anthropic читают стандартную переменную HTTPS_PROXY, поэтому достаточно её экспортировать или передать http-клиент с прокси. HTTP и SOCKS на одном порту, http:// покрывает оба.
Ключ API держите в коде или переменной окружения, авторизуйте IP сервера в кабинете и давайте списку ротироваться на каждый вызов. Медленный запрос повторяйте через следующий адрес, а не ждите его.
Если сервис поднят только в части стран, берите их из CSV-выгрузки, чтобы каждый вызов уходил с разрешённого адреса. Для парсинга ИИ-страниц вместо API гоняйте пул так же, как в парсере.
Пул сначала отфильтруйте Socks List Processor; для лёгкой пробы хватит бесплатного списка.

Вызовы API в объёме дешевле гнать через безлимитный пакет. Веб-версию сервиса под своим аккаунтом держите на резидентном адресе.
Вызовы API в объёмеЛучший выбор
Трафик не считается: длинные ответы и сгенерированные картинки не прибавляют к счёту. Вызовы расходятся по тысячам адресов, а не бьют в один IP.
$700 в месяцили $2.70 в час
Аккаунт в веб-версии
Веб-версия ChatGPT или Midjourney видит один домашний IP, пока выходное устройство в сети. Срок сессии задаёте от 3 минут до 24 часов, страну или город выбираете в строке.
от $1.39 за ГБ1 ГБ за $2.29
Сайты с капчей
Если сервис отвечает адресам пакета капчей, Core даёт домашний IP нужной страны на каждый запрос. Вызов API весит килобайты, и гигабайт расходуется медленно.
от $0.49 за ГБ1 ГБ за $0.85
Выберите пакет, возьмите бесплатный час теста, пустите вызовы через живой пул.