Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: FennelFetish/llama-cpp-python
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: JamePeng/llama-cpp-python
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 19 commits
  • 9 files changed
  • 1 contributor

Commits on Jul 14, 2026

  1. Update Submodule vendor/llama.cpp e3546c7..7f575c3

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 14, 2026
    Configuration menu
    Copy the full SHA
    1762647 View commit details
    Browse the repository at this point in the history
  2. refactor(mtmd): cache Generic MTMD chat template resolution

    - Refactor MTMD chat template handling to resolve and analyze the chat template only
    once per handler instance instead of on every request.
    
    - Add template initialization state, cache parsed media placeholder tags, and support
    explicit chat template overrides through a dedicated field. Improve lifecycle cleanup
    by resetting cached template state and MTMD resources during handler close.
    
    - This keeps runtime processing focused on message rendering and media tokenization
    while avoiding repeated chat template resolution overhead.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 14, 2026
    Configuration menu
    Copy the full SHA
    9d6e598 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2026

  1. Update Submodule vendor/llama.cpp 7f575c3..aff6eb6

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 15, 2026
    Configuration menu
    Copy the full SHA
    5334cb9 View commit details
    Browse the repository at this point in the history
  2. refactor(embedding): rename llama_cpp import alias to llama_cpp_lib

    Rename the 'llama_cpp.llama_cpp' import alias to 'llama_cpp_lib' to avoid potential namespace conflicts with the local '.llama_cpp' imports. Update all affected call sites in llama_embedding.py.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 15, 2026
    Configuration menu
    Copy the full SHA
    859a99d View commit details
    Browse the repository at this point in the history
  3. feat(ctypes): support ABI-compatible symbol aliases

    - Allow ctypes_function_for_shared_library to accept either a single
    symbol name or an ordered iterable of ABI-compatible aliases.
    
    - Resolve aliases in order and bind the first exported symbol found while
    preserving the selected symbol name for runtime diagnostics. Also improve
    error reporting for empty alias lists and missing symbols.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 15, 2026
    Configuration menu
    Copy the full SHA
    849f02a View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2026

  1. Update Submodule vendor/llama.cpp aff6eb6..79bba02

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    142c58d View commit details
    Browse the repository at this point in the history
  2. fix(mtmd): preserve subclass chat format during MTMD initialization

    - Ensure MTMDChatHandler initialization remains compatible with specialized chat
    handlers that define their own chat_format before calling super().__init__().
    
    - Initialize chat_format only when it is not already provided by the subclass,
    then apply chat_format_override or fallback to the built-in MTMD template.
    This prevents AttributeError during inherited handler initialization while
    keeping template override behavior unchanged.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    a804dc2 View commit details
    Browse the repository at this point in the history
  3. feat(ctypes): handle missing optional symbols gracefully

    - Allow ctypes bindings to mark symbols as optional through the `required`
    flag.
    
    - Missing symbols caused by ABI naming differences, API changes, or experimental
    extensions will no longer break library loading. Optional APIs emit diagnostic
    warnings and provide runtime unavailable stubs instead.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    afafdd5 View commit details
    Browse the repository at this point in the history
  4. Update Submodule vendor/llama.cpp 79bba02..e8f19cc

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    083c4b5 View commit details
    Browse the repository at this point in the history
  5. fix(ctypes): validate argument types before binding shared library fu…

    …nctions
    
    - Add explicit validation for ctypes function argument declarations before
    assigning them to the loaded shared library function.
    
    - This provides clearer error messages when invalid Python types are passed
    to `argtypes`, instead of exposing the internal ctypes error about missing
    `from_param()` methods.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    6c163c2 View commit details
    Browse the repository at this point in the history
  6. feat(llama_ext): support optional llama-ext.h API bindings

    - Add Python ctypes bindings for the experimental APIs exposed by
    llama-ext.h, including NextN/MTP embeddings, and model metadata extraction.
    
    - Extension symbols are loaded optionally to handle ABI changes, renamed
    symbols, and builds that do not export experimental APIs without breaking
    the main Python bindings.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    978ff32 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2026

  1. Update Submodule vendor/llama.cpp e8f19cc..86d86ed

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    3df6144 View commit details
    Browse the repository at this point in the history
  2. patch(Gemma4ChatHandler): Synchronize huggingface gemma4 latest chat …

    …template
    
    - fix: chat template — null handling, reasoning preservation, turn-tag balance, input validation
    - https://huggingface.co/google/gemma-4-31B-it/commit/68abe48010cbe15293462fa11e901a60639a44e5
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    a641283 View commit details
    Browse the repository at this point in the history
  3. Bump version to 0.3.43

    - This release focuses on improving compatibility with the rapidly evolving llama.cpp ecosystem, especially around experimental APIs, ABI changes, MTMD processing, and latest model integrations.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    caa72e2 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2026

  1. Update Submodule vendor/llama.cpp 86d86ed..91d2fc3

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 20, 2026
    Configuration menu
    Copy the full SHA
    79b8b5d View commit details
    Browse the repository at this point in the history
  2. fix(ggml): preload bundled OpenMP runtime before loading ggml-base

    - Preload the packaged libomp140.x86_64.dll on Windows before initializing
    ggml-base to ensure CPU backend DLLs can resolve their OpenMP runtime
    dependency.
    
    - This only applies to Windows builds with llama-cpp-python >= 0.3.39 and
    uses the bundled runtime from the package lib directory, avoiding the need
    for users to configure system PATH or install additional OpenMP runtimes.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 20, 2026
    Configuration menu
    Copy the full SHA
    0eb2615 View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2026

  1. Update Submodule vendor/llama.cpp 91d2fc3..846e991

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 21, 2026
    Configuration menu
    Copy the full SHA
    db460e0 View commit details
    Browse the repository at this point in the history
  2. Bump version to 0.3.44

    - This release is a small but important maintenance update focused on improving Windows dynamic library loading reliability.
    
    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 21, 2026
    Configuration menu
    Copy the full SHA
    ebf6099 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2026

  1. Update Submodule vendor/llama.cpp 846e991..4310aa4

    Signed-off-by: JamePeng <jame_peng@sina.com>
    JamePeng committed Jul 22, 2026
    Configuration menu
    Copy the full SHA
    ffbd951 View commit details
    Browse the repository at this point in the history
Loading