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

Programming LLM: Generate grading criterion, double check feedback and filter out solutions #342

Open
wants to merge 24 commits into
base: develop
Choose a base branch
from

Conversation

dmytropolityka
Copy link
Contributor

@dmytropolityka dmytropolityka commented Sep 17, 2024

Motivation and Context

This change reworks the structure of the Programming LLM module to improve its maintainability, readability, and prompt processing efficiency. The initial monolithic prompt was subdivided into smaller, fine-tuned prompts, each encapsulated within individual steps and chained together. This enhances modularity and allows more flexibility in handling the different stages of LLM-based feedback generation.

Description

  1. Restructured the Programming LLM module.
  2. Subdivided the initial large prompt into smaller, more specific prompts for each processing step.
  3. Fine-tuned each step and chained them to maintain the original workflow while improving clarity and performance.

Steps for Testing

Test the changes by using the usual Playground functionality.
Ensure that the step-by-step chaining of prompts works as expected and that the overall feedback generation system operates without regressions.

Testserver States

Note

These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.


@dmytropolityka dmytropolityka marked this pull request as draft September 17, 2024 13:45
@dmytropolityka dmytropolityka added the deploy:athena-test1 Athena Test Server 1 label Sep 17, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de September 17, 2024 15:10 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Sep 17, 2024
@dmytropolityka dmytropolityka removed the lock:athena-test1 Is currently deployed to Athena Test Server 1 label Sep 17, 2024
@dmytropolityka dmytropolityka added the deploy:athena-test1 Athena Test Server 1 label Oct 1, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de October 1, 2024 10:51 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Oct 1, 2024
@dmytropolityka dmytropolityka added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed lock:athena-test1 Is currently deployed to Athena Test Server 1 labels Oct 1, 2024
@github-actions github-actions bot removed the lock:athena-test1 Is currently deployed to Athena Test Server 1 label Oct 1, 2024
@dmytropolityka dmytropolityka added the deploy:athena-test1 Athena Test Server 1 label Oct 1, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de October 1, 2024 12:06 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Oct 1, 2024
@dmytropolityka dmytropolityka added deploy:athena-test1 Athena Test Server 1 and removed lock:athena-test1 Is currently deployed to Athena Test Server 1 labels Oct 1, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de October 1, 2024 12:21 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Oct 1, 2024
@dmytropolityka dmytropolityka removed the lock:athena-test1 Is currently deployed to Athena Test Server 1 label Oct 1, 2024
@github-actions github-actions bot added the lock:athena-test1 Is currently deployed to Athena Test Server 1 label Oct 4, 2024
@dmytropolityka dmytropolityka added deploy:athena-test1 Athena Test Server 1 and removed lock:athena-test1 Is currently deployed to Athena Test Server 1 labels Oct 4, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de October 4, 2024 17:54 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Oct 4, 2024
@dmytropolityka dmytropolityka added deploy:athena-test1 Athena Test Server 1 and removed lock:athena-test1 Is currently deployed to Athena Test Server 1 labels Oct 4, 2024
@dmytropolityka dmytropolityka temporarily deployed to athena-test1.ase.cit.tum.de October 4, 2024 19:14 — with GitHub Actions Inactive
@github-actions github-actions bot added lock:athena-test1 Is currently deployed to Athena Test Server 1 and removed deploy:athena-test1 Athena Test Server 1 labels Oct 4, 2024
@dmytropolityka dmytropolityka changed the title add grading instructions to the prompt, get points Programming LLM: Generate grading criterion, double check feedback and filter out solutions Oct 7, 2024
@dmytropolityka dmytropolityka marked this pull request as ready for review October 7, 2024 16:23
@FelixTJDietrich FelixTJDietrich removed the lock:athena-test1 Is currently deployed to Athena Test Server 1 label Oct 21, 2024
# Conflicts:
#	llm_core/llm_core/utils/llm_utils.py
#	modules/modeling/module_modeling_llm/poetry.lock
#	modules/modeling/module_modeling_llm/pyproject.toml
#	modules/programming/module_programming_llm/module_programming_llm/config.py
#	modules/programming/module_programming_llm/module_programming_llm/generate_graded_suggestions_by_file.py
#	modules/programming/module_programming_llm/module_programming_llm/generate_non_graded_suggestions_by_file.py
#	modules/programming/module_programming_llm/module_programming_llm/generate_summary_by_file.py
#	modules/programming/module_programming_llm/module_programming_llm/helpers/models/model_config.py
#	modules/programming/module_programming_llm/module_programming_llm/helpers/models/openai.py
#	modules/programming/module_programming_llm/module_programming_llm/helpers/models/replicate.py
#	modules/programming/module_programming_llm/module_programming_llm/split_grading_instructions_by_file.py
#	modules/programming/module_programming_llm/module_programming_llm/split_problem_statement_by_file.py
#	modules/programming/module_programming_llm/poetry.lock
#	modules/programming/module_programming_llm/pyproject.toml
#	modules/text/module_text_llm/poetry.lock
#	modules/text/module_text_llm/pyproject.toml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants