Version 1.8.6 of package Ellama has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.

Ellama describes itself as:

  ==============================
  Tool for interacting with LLMs
  ==============================

More at https://elpa.gnu.org/packages/ellama.html

## Summary:

  [file:https://img.shields.io/badge/license-GPL_3-green.svg]
  [file:https://melpa.org/packages/ellama-badge.svg]
  [file:https://stable.melpa.org/packages/ellama-badge.svg]
  [file:https://elpa.gnu.org/packages/ellama.svg]

  Ellama is a tool for interacting with large language models from
  Emacs. It allows you to ask questions and receive responses from the
  LLMs. Ellama can perform various tasks such as translation, code review,
  summarization, enhancing grammar/spelling or wording and more through
  the Emacs interface. Ellama natively supports streaming output, making
  it effortless to use with your preferred text editor.

  The name "ellama" is derived from "Emacs Large LAnguage Model
  Assistant". Previous sentence was written by Ellama itself.
  <file:imgs/reasoning-models.gif>

## Recent NEWS:

1 Version 1.8.6
═══════════════

  • Use derived-mode-p instead of eq for mode checking.
  • Fix code block translation in markdown to org mode conversion.


2 Version 1.8.5
═══════════════

  • Added `ellama-debug' to documentation.


3 Version 1.8.4
═══════════════

  • Added `(require 'llm-ollama)' to `ellama-get-ollama-model-names'
    function to ensure the llm-ollama module is loaded before attempting
    to retrieve ollama model names. This fixes error when the function
    is called without the module being previously required.


4 Version 1.8.3
═══════════════

  • Added `ellama-debug' custom variable to enable debug output. When
    enabled, generated text is now logged to a `*ellama-debug*' buffer
    with a separator for easier tracking of debug information. The debug
    output includes the raw text being processed and is appended to the
    end of the debug buffer each time.
  • Fixed issue where nested or improperly formatted code blocks were
    not being handled correctly during markdown to org conversion. Added
    logic to check for existing BEGIN_SRC markers before replacing
    blocks, and improved backward search handling. Also added test cases
    for multiple bad code blocks with good content before and after
    them.
  • Changed `ellama--string-without-last-line' function to
    `ellama--string-without-last-two-lines' to remove last two lines
    instead of one. Updated the text insertion logic in `ellama--insert'
    to use the new function and handle paragraph filling more
    robustly. Also improved the condition check for wrong character
    count and adjusted test cases accordingly.
  • Fixed test case.
  • Added reproduction of duplicate lines bug. Fix this bug.


5 Version 1.8.2
═══════════════

  • Refactored `ellama--apply-transformations' to use markers for
    stability during replacements. Added `set-hard-newline' properties
    to handle hard newlines during text filling. Updated test cases to
    include a new test for markdown list to org list conversion.
  • Added check for function existence to avoid errors when
    `llm-ollama-p' is not available.
  • Displayed ellama instant result buffer on done instead of visible
    reasoning buffer.
  • Added two new tests for ellama functionality:
    `test-ellama-lorem-ipsum' verifies proper line wrapping and
    formatting of long text.  `test-ellama-duplicate-strings' checks
    handling of duplicate strings with markdown formatting.
  • Added a check to skip processing when input text is empty,
    preventing potential errors in subsequent operations.
  • Moved `(require 'llm-ollama)' from inside the function to top scope
    to ensure package is loaded before use.


6 Version 1.8.1
═══════════════

  • Use direct interfacing with Ollama's API instead of local
    installation.


7 Version 1.8.0
═══════════════

  • Added `create-session' optional parameter to `ellama-ask-about',
    `ellama-ask-selection', `ellama-ask-line', and `ellama-code-review'
    commands, and added `--new-session' option to transient
    commands. These changes allow creating a new session even if one is
    already active.
  • Added the ability to create an ephemeral session by adding a new
    `:ephemeral' argument to various functions and added the
    `--ephemeral' option to several transient commands in
    `ellama-transient.el'.
  • Implemented ephemeral context elements that are cleared after a
    single LLM request. Added corresponding functions and transient
    suffixes to manage ephemeral context elements, updating existing
    functions to handle both global and ephemeral contexts.
  • Set up the transient menu to ensure the Ollama model is filled if
    it's empty.
  • Added `use-hard-newlines' variable and updated text insertion to use
    hard newlines. Ensured that text is inserted only if there is a
    delta, and improved the conditional logic for filling paragraphs.


8 Version 1.7.2
═══════════════

  • Added detailed context management documentation.


9 Version 1.7.1
═══════════════

  • Set default directory for new sessions.
  • Added functionality to set the file name before saving a session.
  • Enhanced session ID generation to prevent overwriting existing
    session files.


10 Version 1.7.0
════════════════

  • Added manual generation functionality for Ellama, including a new
    .gitignore
  …  …

Reply via email to