Release 0.9.0#91
Merged
Merged
Conversation
Signed-off-by: Jakub Walaszczyk <jwalaszc@redhat.com> Assisted-by: Claude Code
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release v0.9.0
Summary
This release adds multilingual support to the RAG optimization pipeline, enabling language-aware prompt generation and automatic benchmark language detection. It also replaces the
tiktokendependency with a lightweight character-based token approximation, simplifies the search space report format (YAML to JSON), and improves embedding reliability with progressive chunk truncation for oversized inputs.Changes
Added
Languagedataclass andlanguageparameter onBaseFoundationModelfor language-aware prompt template generationai4rag.search_space.prepare.language_detectionmodule for LLM-based benchmark language detection with ISO 639-1 mappingCharApproxTokenizer— lightweight, model-agnostic tokenizer approximating token count via character ratio, replacing thetiktokendependencyai4rag.components.assets_generator.prompt_filtersmodule for filtering OGX runtime injection duplicates from HPO prompt templates during Responses API exportOGXEmbeddingModel— oversized chunks are truncated before embedding instead of failingmax_threadsparameter onrun_rag_optimization()for controlling concurrent benchmark evaluation threadsChanged
BaseFoundationModelconstructor accepts alanguageparameter;user_message_textandcontext_template_textare now validated properties instead ofRAGPromptTemplateStringdescriptorsBaseFoundationModel.chat()signature now accepts**kwargssearch_space_preparationandrag_templates_optimizationno longer usepyyamlOGXEmbeddingModel._embed_text()renamed to_call_embedding_api()tiktokendependency with character-based token approximation across all chunkersdoclingdependency to2.107.0and adapted to new APIRAGPromptTemplateStringdescriptor replaced with setter-based validation viavalidate_prompt_templates_placeholders()text_extraction,search_space_preparation,rag_templates_optimization) made more customizable with additional parametersmikedependency and documentation versioning from CI/CDFixed
random_stateparameter properly wired throughBaseOptimizertoGAMOptimizerandRandomOptimizerfor deterministic optimization runsdoclinginstall cell from indexing notebook templateRemoved
tiktokendependency — replaced byCharApproxTokenizerRAGPromptTemplateStringdescriptor class fromai4rag.rag.foundation_models.utilsMigration notes
.yml/.yaml) must be converted to JSON before use withrun_rag_optimization(). Theprepare_search_space_report()function now writes JSON by default.BaseFoundationModel, updatechat()to accept**kwargsand note thatuser_message_text/context_template_textare now properties with validation. TheRAGPromptTemplateStringdescriptor is removed.OGXEmbeddingModel._embed_text()directly, rename to_call_embedding_api().BaseFoundationModelconstructor now accepts an optionallanguageparameter (defaults toLanguage(code="", name="auto")). No action required unless you want to specify a language explicitly.Checklist
__version__inai4rag/__init__.pyupdated to0.9.0docs/about/changelog.mdupdatedpytest)