WhyPik DocsVề trang chính

Lập trình viên / Tra cứu

Thư viện Python có sẵn

Phiên bản runtime, bộ thư viện được cài sẵn và cài cùng phiên bản trên máy local.

Runtime và phạm vi sử dụng

Mini Server dùng CPython 3.14 trên Linux amd64. Các thư viện dưới đây đã có sẵn; không đưa chúng vào ZIP, không chạy pip trong handler. Runtime giữ dữ liệu package, thư viện native, CA và múi giờ cần thiết.

Mỗi invocation có tối đa 256 MiB RAM và 60 giây, tính cả import, xử lý và chờ. Chỉ import thư viện ứng dụng cần dùng. Bộ thư viện có sẵn không có nghĩa phù hợp xử lý ảnh hay bảng dữ liệu không giới hạn kích thước. Không tạo tác vụ nền sau khi trả response.

WhyPik ghim cả dependency gián tiếp và kiểm SHA256 khi dựng runtime. whypik runtime info in danh sách phiên bản trực tiếp của CLI đang cài; nâng CLI theo thông báo runtime để đồng bộ. OpenAI và Anthropic có dependency HTTPX2 riêng, không thay thế HTTPX 0.28.1.

Danh sách thư viện

Tên package dùng khi cài đặt có thể khác tên import. Phiên bản trong bảng thuộc bộ runtime đi kèm CLI 0.2.0.

PackagePhiên bảnImport
google-cloud-vision3.16.0google.cloud.vision
google-auth2.61.0google.auth
regex2026.9.29regex
openai3.28.0openai
google-genai2.29.0google.genai
anthropic1.13.0anthropic
httpx0.28.1httpx
requests2.34.2requests
pydantic2.14.0pydantic
python-dateutil2.9.0.post0dateutil
email-validator2.3.0email_validator
python-slugify9.1.3slugify
orjson3.13.0orjson
defusedxml0.7.1defusedxml
jinja23.1.6jinja2
cachetools7.2.1cachetools
tenacity9.1.4tenacity
python-multipart0.0.32python_multipart
Pillow12.3.0PIL
cryptography50.0.2cryptography
langdetect1.0.9langdetect
beautifulsoup44.15.0bs4
PyYAML6.0.3yaml
phonenumbers9.0.41phonenumbers
markdown3.11markdown
pygments2.21.0pygments
decorator5.3.1decorator
pandas3.0.6pandas
numpy2.5.3numpy

Cài trên máy local

Tạo và kích hoạt virtual environment CPython 3.14 rồi cài WhyPik CLI trong chính môi trường đó. whypik runtime install chỉ chạy trong venv trên Windows amd64 hoặc Linux amd64; dùng pip kiểm hash và chỉ cài wheel. Các tên/phiên bản dependency giống runtime, wheel native khác theo hệ điều hành.

Lệnh cài có thể thay phiên bản thư viện đã có trong venv. Dùng một venv riêng cho ứng dụng. CLI cơ bản vẫn chạy trên Python 3.11+, nhưng bộ thư viện runtime cần 3.14. Local không có sandbox hoặc giới hạn RAM của production; thử lại trên backend thử nghiệm trước khi phát hành.

text
# Linux
python3.14 -m venv .venv
. .venv/bin/activate
python -m pip install https://app.whypik.com/api/v1/public/sdk/mini/whypik-mini.zip
whypik runtime info
whypik runtime install
whypik run --host 127.0.0.1 --port 8000

# Windows PowerShell: tạo venv rồi kích hoạt trước các lệnh trên
py -3.14 -m venv .venv
.\.venv\Scripts\Activate.ps1

Ví dụ Pillow và NumPy

Lưu vào server.py trong project CLI. Chạy whypik run rồi mở /api/image-check; không cần API key bên ngoài.

python
import io
import numpy as np
from PIL import Image
from whypik import api

@api.get('/image-check')
async def image_check(request):
    image = Image.new('RGB', (32, 32), 'red')
    output = io.BytesIO()
    image.save(output, format='PNG')
    return {'width': image.width, 'png_bytes': len(output.getvalue()),
            'mean': float(np.array([1, 2, 3]).mean())}

Dịch vụ AI và tài khoản bên ngoài

Package có sẵn không cấp API key, tín dụng hay quyền dùng Google/OpenAI/Anthropic. Lưu khóa của ứng dụng trong Variables dạng bí mật; local đặt trong .env riêng. Không đưa khóa vào source, phản hồi HTTP hoặc log.

Khởi tạo SDK và gọi dịch vụ là hai bước khác nhau. Dùng Google Vision REST transport; không giả định mọi giao thức của thư viện đều được nền tảng cho phép. Cấu hình timeout và retry theo thời gian còn lại của invocation.

Thư viện đã cài và RAM khi chạy

Cài sẵn không có nghĩa là import tất cả vào từng sandbox. Python chỉ nạp thư viện khi mã của bạn import; mô hình, ảnh và DataFrame được tạo khi thực thi sẽ dùng thêm RAM. Chỉ import và tạo dữ liệu cần dùng cho handler.

Module đã import và cache có thể nằm trong sandbox được giữ lại. Giải phóng biến hoặc đóng file/client không bảo đảm RAM hệ điều hành giảm ngay vì Python và thư viện native có thể giữ vùng nhớ để tái sử dụng. Khi WhyPik hủy sandbox để nhường tài nguyên, toàn bộ bộ nhớ của sandbox đó mới được thu hồi.

Không có nút bật/tắt từng thư viện. Với pandas, NumPy, Pillow, langdetect hoặc dữ liệu lớn, giới hạn kích thước đầu vào và xử lý theo phần nhỏ; cài sẵn thư viện không tăng giới hạn bộ nhớ của backend.

Trong bài này