Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A bunch of improvements for the classification skill #50

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from

Commits on Dec 24, 2023

  1. Improve utils.logs.print_dataframe()

    1. Make number of rows to print a configurable parameter (default to 5).
    2. Add parameter to enable index column printing. This implementation
       prints index of the original data frame if the passed data frame is
       derived.
    chemeris committed Dec 24, 2023
    Configuration menu
    Copy the full SHA
    dbcd295 View commit details
    Browse the repository at this point in the history

Commits on Jan 1, 2024

  1. English grammar fix.

    chemeris committed Jan 1, 2024
    Configuration menu
    Copy the full SHA
    c30988b View commit details
    Browse the repository at this point in the history
  2. agents.Agent: Estimate accuracy after the last prompt change.

    Otherwise we don't know whether it improved the accuracy or not.
    
    We should eventually introduce smarter learning strategies. E.g.
    simple ones like not accepting changes that make accuracy worse.
    Or complex ones with genetic algorithms like in FunSearch.
    chemeris committed Jan 1, 2024
    Configuration menu
    Copy the full SHA
    4fb234e View commit details
    Browse the repository at this point in the history
  3. agents.Agent: Skip skill output with accuracy above the threshold.

    Accuracy threshold was ignored and unused originally which made
    training quite difficult in practical scenarios.
    chemeris committed Jan 1, 2024
    Configuration menu
    Copy the full SHA
    5c4cb6b View commit details
    Browse the repository at this point in the history
  4. Fix environment feedback for skills with multiple outputs.

    When providing feedback to the model, mention which output is wrong.
    Otherwise the model doesn't have enough information which of
    the outputs is correct/incorrect.
    chemeris committed Jan 1, 2024
    Configuration menu
    Copy the full SHA
    77cb85e View commit details
    Browse the repository at this point in the history
  5. agents.Agent: Improve the teacher model prompt.

    1. Phrase the prompt in more imperative manner liked by GPT models.
    2. Instruct the teacher model to avoid unnecessary rephrasing of
       the prompt. With GPT-4 this makes it to make a lot less unnecessary
       changes. When a skill has multiple outputs, each skill output rewrite
       also changes wording of all the other outputs unnecessary distorting
       and degrading their performance. This phrasing significantly reduces
       such distortion but doesn't remove it completely. Running training
       cycles on each skill output separately solves this completely but
       is much much slower. Another potential solutions (I haven't tried
       it yet) is to collect feedback for all outputs and apply it all
       in a single go. More testing with real data is needed here.
    chemeris committed Jan 1, 2024
    Configuration menu
    Copy the full SHA
    480a781 View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2024

  1. Configuration menu
    Copy the full SHA
    689387b View commit details
    Browse the repository at this point in the history