Releases: ai-forever/gpt2giga
Releases · ai-forever/gpt2giga
v0.1.6a1
[0.1.6a1] - 2026-03-24
Added
- OpenAI Files API: added
/files,/files/{file_id}, and/files/{file_id}/contentendpoints plus theexamples/openai/files.pyexample - OpenAI Batches API: added
/batchesand/batches/{batch_id}endpoints plus theexamples/openai/batches.pyexample - Anthropic Message Batches API: added
/v1/messages/batches,/v1/messages/batches/{message_batch_id}, and/v1/messages/batches/{message_batch_id}/resultsplus theexamples/anthropic/message_batches.pyexample - New integrations: added setup guides for Qwen Code and Xcode
- CI and automation: added
actionlint,CodeQL,dependency-review,docker-smoke,nightly-smoke,pr-labeler,release-drafter,stale-issues, and Dependabot configuration
Changed
- Examples: moved OpenAI examples under
examples/openai/and aligned README/AGENTS docs with the new layout - OpenAPI: split OpenAI and Anthropic schema builders into
gpt2giga/openapi_specs/ - LiteLLM router: moved
/model/infohandling into the dedicatedgpt2giga/routers/litellm/package - Docker Compose: standardized compose files under
compose/(base.yaml,observability.yaml,nginx.yaml,observe-multiple.yaml,traefik.yaml) - GitHub templates: added Russian-language issue and pull request templates
Fixed
- Path normalization: fixed normalization for
/v1,files,batches,messages, andmodel/info - OpenAI payload mapping:
extra_bodynow maps correctly toadditional_fields - Batches: fixed
completion_windowhandling and Python 3.10 datetime behavior - Examples: refreshed runnable OpenAI and Anthropic examples after the directory reorganization
v0.1.5
What's Changed
- feature: add /model/info for compatability with kilocode autocompleti… by @krakenalt in #80
Added
- Model info endpoint: Added
GET /model/infofor compatibility with Kilo Code autocomplete and LiteLLM-style clients
Changed
- GitHub Actions:
ci.yaml,docker_image.yaml, andpublish-ghcr.ymlnow run only when relevant files change
Fixed
- Pull Request CI: The test workflow no longer runs for draft PRs
Full Changelog: v0.1.4.post1...v0.1.5
v0.1.4.post1
What's Changed
- Development environment setup by @krakenalt in #78
Full Changelog: v0.1.4...v0.1.4.post1
Added
- Cursor integration: Added
integrations/cursor/README.md— guide for using GigaChat in Cursor as a custom model - Codex integration: Added
integrations/codex/README.md— OpenAI Codex setup viaconfig.tomlwith custom gpt2giga provider - Claude Code integration: Added
integrations/claude-code/README.md— Claude Code setup viaANTHROPIC_BASE_URL - AGENTS.md documentation: Updated all
AGENTS.mdfiles to match the current codebase structure
Changed
- Async I/O: Moved blocking I/O operations in route handlers to worker threads via
anyio.to_thread.run_sync:logs_router.py— log file reading and HTML template loadingapi_router.py—tiktoken.encoding_for_model()initialization
v0.1.4
What's Changed
- Relese v0.1.4 by @krakenalt in #76
Full Changelog: v0.1.3.post1...v0.1.4
Added
- Nginx: Added
gpt2giga.confconfig and README for deployment behind nginx - Docker Compose: Updated compose (#77) — mitmproxy in
docker-compose-observability.yaml, password for mitmproxy - Logs router: Extracted
logs_router.py, split system router in two
Changed
- Updated
.env.example - Updated README for nginx
Fixed
- Giga-auth: Fixed giga-auth behaviour (#74)
v0.1.3.post1
v0.1.3
Added
- DEV/PROD Mode: Added support for development and production modes
- Configurable CORS: Added CORS configuration via environment variables
- Graceful shutdown: Added graceful server shutdown handling
- Gitleaks: Added gitleaks to pre-commit for secret detection
- OpenAPI for count_tokens: Added OpenAPI documentation for count_tokens endpoint
-
- Profiles in Docker: Added profiles DEV and PROD in
docker-compose.yaml
- Profiles in Docker: Added profiles DEV and PROD in
Changed
- Structure Refactoring: Split large files into modules:
gpt2giga/common/— common utilities (exceptions, json_schema, streaming, tools)gpt2giga/models/— configuration and security modelsgpt2giga/protocol/attachment/— attachment processinggpt2giga/protocol/request/— request transformationgpt2giga/protocol/response/— response processing
- Improved Logging: Log redaction policy, disabled full payload logging
Fixed
- CLI Security: Fixed command-line argument issues
- Port Bindings: Fixed port binding and redirect issues
- SSRF Protection: Hardened SSRF protection in attachment handling
- Authentication: Switched to
secrets.compare_digestfor key comparison - Attachment Limits: Added limits for attachments
- Mapping for reversed tool name: Fixed bug with function name
web_search, which can break function_call
v0.1.2.post1
Added
- OpenAPI Documentation: Added full OpenAPI documentation for all endpoints
- Count tokens for Anthropic: Added
/v1/messages/count_tokensendpoint for token counting in Anthropic format - count_tokens Example: Added
examples/anthropic/count_tokens.pyexample - Version on Initialize: Display version on server startup
Changed
- Path Normalizer: Improved path normalizer for responses and messages
Fixed
- 405 Error: Fixed 405 error on certain requests
- Safe Request Reading: Improved request body reading handling
v0.1.2
What's Changed
- Release v0.1.2 by @krakenalt in #64
Full Changelog: v0.1.1.post1...v0.1.2
Added
- Anthropic Messages API: New
POST /v1/messagesendpoint for Anthropic Messages API compatibility- Streaming support (SSE) in Anthropic format (
message_start,content_block_delta,message_stop, etc.) - Anthropic message conversion (text, image, tool_use, tool_result) to GigaChat format
- Anthropic tool conversion (
input_schema) to GigaChat functions format tool_choicesupport (auto, tool, none)- System prompt support (
system) as string or content block array stop_reasonmapping (end_turn, tool_use, max_tokens)
- Streaming support (SSE) in Anthropic format (
- Extended Thinking (Reasoning): Support for Anthropic
thinkingparameterthinking.budget_tokensmapped to GigaChatreasoning_effort(high/medium/low)- GigaChat
reasoning_contentconverted to Anthropicthinkingcontent block - Reasoning support in streaming (
thinking_delta)
- Anthropic API Examples: Added examples in
examples/anthropic/:messages.py— basic requestmessages_stream.py— streamingsystem_prompt.py— system promptmulti_turn.py— multi-turn conversationfunction_calling.py— function calling (tool use)image_url.py— image from URLbase64_image.py— base64 imagereasoning.py— extended thinking
v0.1.1.post1
What's Changed
- bugfix: Handle array-style type field: type: ['string', 'null'] -> ty… by @krakenalt in #61
Full Changelog: v0.1.1...v0.1.1.post1
v0.1.1
What's Changed
- [Release]: v0.1.1 by @krakenalt in #59
Full Changelog: v0.1.0...v0.1.1
Added
- GitHub Templates: Added Pull Request and Issue (bug report) templates to improve contribution process (#58)
- $ref Resolution in Schemas: Added
_resolve_schema_refsfunction for handling JSON Schema references (#57) - Missing Properties Handling: Implemented proper handling of schemas without
propertiesfield
Changed
- request_mapper.py Refactoring: Logic split into separate modules for better maintainability:
content_utils.py— utilities for content handlingmessage_utils.py— utilities for message handlingschema_utils.py— utilities for schema handling
- Extended Test Coverage: Added tests for streaming and tool conversion
Fixed
- Responses API Streaming: Fixed streaming responses in Responses API (#60)
- Function Calling in Streaming: Fixed function call handling during streaming in Responses API