From 46611681c271c98edff6d28df9c122aedb5008fb Mon Sep 17 00:00:00 2001
From: lipeiji <2247778946@qq.com>
Date: Mon, 16 Jun 2025 10:33:07 +0800
Subject: [PATCH] add medical
---
LICENSE | 0
.../data_configs/data_config_test.jsonl | 97 +-----------------
.../data_configs/data_config_train.jsonl | 97 +-----------------
.../puzzle_configs/med_calculator_test.json | 3 +
.../puzzle_configs/med_calculator_train.json | 3 +
examples/pipelines/quickgen_data_configs.py | 2 +-
examples/pipelines/run_pipeline.sh | 6 +-
examples/unittests/run_eval.py | 7 +-
examples/verl_usage/verl_data_preprocess.py | 2 +-
figs/auto_pipeline.png | Bin
figs/auto_pipeline_cn.png | Bin
figs/demo_internthinkerGO.png | Bin
figs/interface.png | Bin
figs/logo.png | Bin
internbootcamp/bootcamp/__init__.py | 3 +-
internbootcamp/bootcamp/base.py | 13 ++-
.../bootcamp/bigcodebench/bigcodebench.py | 0
internbootcamp/bootcamp/codeio/codeio.py | 0
.../bootcamp/codeio/codeio_utils.py | 0
.../bootcamp/instruction_following/autoif.py | 0
internbootcamp/bootcamp/kodcode/kodcode.py | 0
.../bootcamp/med_calculator/med_calculator.py | 8 +-
.../med_calculator/med_calculator.json | 0
setup.py | 34 ++++++
24 files changed, 67 insertions(+), 208 deletions(-)
mode change 100644 => 100755 LICENSE
create mode 100644 examples/pipelines/puzzle_configs/med_calculator_test.json
create mode 100644 examples/pipelines/puzzle_configs/med_calculator_train.json
mode change 100644 => 100755 figs/auto_pipeline.png
mode change 100644 => 100755 figs/auto_pipeline_cn.png
mode change 100644 => 100755 figs/demo_internthinkerGO.png
mode change 100644 => 100755 figs/interface.png
mode change 100644 => 100755 figs/logo.png
mode change 100644 => 100755 internbootcamp/bootcamp/bigcodebench/bigcodebench.py
mode change 100644 => 100755 internbootcamp/bootcamp/codeio/codeio.py
mode change 100644 => 100755 internbootcamp/bootcamp/codeio/codeio_utils.py
mode change 100644 => 100755 internbootcamp/bootcamp/instruction_following/autoif.py
mode change 100644 => 100755 internbootcamp/bootcamp/kodcode/kodcode.py
mode change 100644 => 100755 internbootcamp/bootcamp/med_calculator/med_calculator.py
rename internbootcamp/{bootcamp => libs}/med_calculator/med_calculator.json (100%)
create mode 100755 setup.py
diff --git a/LICENSE b/LICENSE
old mode 100644
new mode 100755
diff --git a/examples/pipelines/data_configs/data_config_test.jsonl b/examples/pipelines/data_configs/data_config_test.jsonl
index 9b52ffe..b9ba165 100644
--- a/examples/pipelines/data_configs/data_config_test.jsonl
+++ b/examples/pipelines/data_configs/data_config_test.jsonl
@@ -1,96 +1 @@
-{"bootcamp_name": "aquarium", "sample_number": 100, "config_file": "aquarium", "bootcamp_cls_name": "Aquariumbootcamp"}
-{"bootcamp_name": "arc", "sample_number": 100, "config_file": "arc", "bootcamp_cls_name": "Arcbootcamp"}
-{"bootcamp_name": "arrowmaze", "sample_number": 100, "config_file": "arrowmaze", "bootcamp_cls_name": "Arrowmazebootcamp"}
-{"bootcamp_name": "bbehboardgameqa", "sample_number": 100, "config_file": "bbeh_boardgame_qa", "bootcamp_cls_name": "Bbehboardgameqabootcamp"}
-{"bootcamp_name": "bbehbooleanexpressions", "sample_number": 100, "config_file": "bbeh_boolean_expressions", "bootcamp_cls_name": "Bbehbooleanexpressionsbootcamp"}
-{"bootcamp_name": "bbehobjectcounting", "sample_number": 100, "config_file": "bbeh_object_counting", "bootcamp_cls_name": "Bbehobjectcountingbootcamp"}
-{"bootcamp_name": "bbehobjectproperties", "sample_number": 100, "config_file": "bbeh_object_properties", "bootcamp_cls_name": "Bbehobjectpropertiesbootcamp"}
-{"bootcamp_name": "bbehshuffobject", "sample_number": 100, "config_file": "bbeh_shuff_object", "bootcamp_cls_name": "Bbehshuffobjectbootcamp"}
-{"bootcamp_name": "BBEHBuggyTables", "sample_number": 100, "config_file": "BBEHBuggyTables", "bootcamp_cls_name": "BBEHBuggyTablesbootcamp"}
-{"bootcamp_name": "BbehDyckLanguages", "sample_number": 100, "config_file": "BbehDyckLanguages", "bootcamp_cls_name": "BbehDyckLanguagesbootcamp"}
-{"bootcamp_name": "BbehGeometricShapes", "sample_number": 100, "config_file": "BbehGeometricShapes", "bootcamp_cls_name": "BbehGeometricShapesbootcamp"}
-{"bootcamp_name": "BbehMultistepArithmetic", "sample_number": 100, "config_file": "BbehMultistepArithmetic", "bootcamp_cls_name": "BbehMultistepArithmeticbootcamp"}
-{"bootcamp_name": "BBEHMultistepArithmeticV2", "sample_number": 100, "config_file": "BBEHMultistepArithmeticV2", "bootcamp_cls_name": "BBEHMultistepArithmeticV2bootcamp"}
-{"bootcamp_name": "BbehTemporalSequences", "sample_number": 100, "config_file": "BbehTemporalSequences", "bootcamp_cls_name": "BbehTemporalSequencesbootcamp"}
-{"bootcamp_name": "BbehWebOfLies", "sample_number": 100, "config_file": "BbehWebOfLies", "bootcamp_cls_name": "BbehWebOfLiesbootcamp"}
-{"bootcamp_name": "BbehWordSorting", "sample_number": 100, "config_file": "BbehWordSorting", "bootcamp_cls_name": "BbehWordSortingbootcamp"}
-{"bootcamp_name": "binairo", "sample_number": 100, "config_file": "binairo", "bootcamp_cls_name": "Binairobootcamp"}
-{"bootcamp_name": "calcudoku", "sample_number": 100, "config_file": "calcudoku", "bootcamp_cls_name": "Calcudokubootcamp"}
-{"bootcamp_name": "campsite", "sample_number": 100, "config_file": "campsite", "bootcamp_cls_name": "Campsitebootcamp"}
-{"bootcamp_name": "cipher", "sample_number": 100, "config_file": "cipher", "bootcamp_cls_name": "Cipherbootcamp"}
-{"bootcamp_name": "cryptomath", "sample_number": 100, "config_file": "crypto_math", "bootcamp_cls_name": "Cryptomathbootcamp"}
-{"bootcamp_name": "dominosa", "sample_number": 100, "config_file": "dominosa", "bootcamp_cls_name": "Dominosabootcamp"}
-{"bootcamp_name": "futoshiki", "sample_number": 100, "config_file": "futoshiki", "bootcamp_cls_name": "Futoshikibootcamp"}
-{"bootcamp_name": "galaxies", "sample_number": 100, "config_file": "galaxies", "bootcamp_cls_name": "Galaxiesbootcamp"}
-{"bootcamp_name": "game24", "sample_number": 100, "config_file": "game24", "bootcamp_cls_name": "Game24bootcamp"}
-{"bootcamp_name": "heyawake", "sample_number": 100, "config_file": "heyawake", "bootcamp_cls_name": "Heyawakebootcamp"}
-{"bootcamp_name": "hitori", "sample_number": 100, "config_file": "hitori", "bootcamp_cls_name": "Hitoribootcamp"}
-{"bootcamp_name": "kakurasu", "sample_number": 100, "config_file": "kakurasu", "bootcamp_cls_name": "Kakurasubootcamp"}
-{"bootcamp_name": "kakuro", "sample_number": 100, "config_file": "kakuro", "bootcamp_cls_name": "Kakurobootcamp"}
-{"bootcamp_name": "korCipherCustomInverseShiftSubstitutionCipher", "sample_number": 100, "config_file": "korCipherCustomInverseShiftSubstitutionCipher", "bootcamp_cls_name": "KorCipherCustomInverseShiftSubstitutionCipherbootcamp"}
-{"bootcamp_name": "korLogicAnalogicalReasoning", "sample_number": 100, "config_file": "korLogicAnalogicalReasoning", "bootcamp_cls_name": "KorLogicAnalogicalReasoningbootcamp"}
-{"bootcamp_name": "korLogicCanonicalPropositions", "sample_number": 100, "config_file": "korLogicCanonicalPropositions", "bootcamp_cls_name": "KorLogicCanonicalPropositionsbootcamp"}
-{"bootcamp_name": "korLogicCooperativePrinciple", "sample_number": 100, "config_file": "korLogicCooperativePrinciple", "bootcamp_cls_name": "KorLogicCooperativePrinciplebootcamp"}
-{"bootcamp_name": "korLogicDefinitions", "sample_number": 100, "config_file": "korLogicDefinitions", "bootcamp_cls_name": "KorLogicDefinitionsbootcamp"}
-{"bootcamp_name": "korLogicDerivativeReasoningOfPropositionalLogic", "sample_number": 100, "config_file": "korLogicDerivativeReasoningOfPropositionalLogic", "bootcamp_cls_name": "KorLogicDerivativeReasoningOfPropositionalLogicbootcamp"}
-{"bootcamp_name": "korLogicDisjunctiveNormalFormAndConjunctiveNormalForm", "sample_number": 100, "config_file": "korLogicDisjunctiveNormalFormAndConjunctiveNormalForm", "bootcamp_cls_name": "KorLogicDisjunctiveNormalFormAndConjunctiveNormalFormbootcamp"}
-{"bootcamp_name": "korLogicDynamicLogic", "sample_number": 100, "config_file": "korLogicDynamicLogic", "bootcamp_cls_name": "KorLogicDynamicLogicbootcamp"}
-{"bootcamp_name": "korLogicEnumerativeInductiveReasoning", "sample_number": 100, "config_file": "korLogicEnumerativeInductiveReasoning", "bootcamp_cls_name": "KorLogicEnumerativeInductiveReasoningbootcamp"}
-{"bootcamp_name": "korLogicEpistemicLogic", "sample_number": 100, "config_file": "korLogicEpistemicLogic", "bootcamp_cls_name": "KorLogicEpistemicLogicbootcamp"}
-{"bootcamp_name": "korLogicEquivalenceCalculus", "sample_number": 100, "config_file": "korLogicEquivalenceCalculus", "bootcamp_cls_name": "KorLogicEquivalenceCalculusbootcamp"}
-{"bootcamp_name": "korLogicFigureOfTheSyllogism", "sample_number": 100, "config_file": "korLogicFigureOfTheSyllogism", "bootcamp_cls_name": "KorLogicFigureOfTheSyllogismbootcamp"}
-{"bootcamp_name": "korLogicFormalFallacies", "sample_number": 100, "config_file": "korLogicFormalFallacies", "bootcamp_cls_name": "KorLogicFormalFallaciesbootcamp"}
-{"bootcamp_name": "korLogicInductionParadox", "sample_number": 100, "config_file": "korLogicInductionParadox", "bootcamp_cls_name": "KorLogicInductionParadoxbootcamp"}
-{"bootcamp_name": "korLogicLogicalMethodsForExploringCauseAndEffectRelationships", "sample_number": 100, "config_file": "korLogicLogicalMethodsForExploringCauseAndEffectRelationships", "bootcamp_cls_name": "KorLogicLogicalMethodsForExploringCauseAndEffectRelationshipsbootcamp"}
-{"bootcamp_name": "korLogicPredicateLogicFormalization", "sample_number": 100, "config_file": "korLogicPredicateLogicFormalization", "bootcamp_cls_name": "KorLogicPredicateLogicFormalizationbootcamp"}
-{"bootcamp_name": "korLogicPropositionalLogicConcepts", "sample_number": 100, "config_file": "korLogicPropositionalLogicConcepts", "bootcamp_cls_name": "KorLogicPropositionalLogicConceptsbootcamp"}
-{"bootcamp_name": "korLogicPropositionalLogicFormalization", "sample_number": 100, "config_file": "korLogicPropositionalLogicFormalization", "bootcamp_cls_name": "KorLogicPropositionalLogicFormalizationbootcamp"}
-{"bootcamp_name": "korLogicResolution", "sample_number": 100, "config_file": "korLogicResolution", "bootcamp_cls_name": "KorLogicResolutionbootcamp"}
-{"bootcamp_name": "korLogicSpeechActs", "sample_number": 100, "config_file": "korLogicSpeechActs", "bootcamp_cls_name": "KorLogicSpeechActsbootcamp"}
-{"bootcamp_name": "korLogicStatisticalReasoning", "sample_number": 100, "config_file": "korLogicStatisticalReasoning", "bootcamp_cls_name": "KorLogicStatisticalReasoningbootcamp"}
-{"bootcamp_name": "korLogicTemporalPropositions", "sample_number": 100, "config_file": "korLogicTemporalPropositions", "bootcamp_cls_name": "KorLogicTemporalPropositionsbootcamp"}
-{"bootcamp_name": "korLogicTruthValueModalPropositions", "sample_number": 100, "config_file": "korLogicTruthValueModalPropositions", "bootcamp_cls_name": "KorLogicTruthValueModalPropositionsbootcamp"}
-{"bootcamp_name": "korOperationUnicode0032", "sample_number": 100, "config_file": "korOperationUnicode0032", "bootcamp_cls_name": "KorOperationUnicode0032bootcamp"}
-{"bootcamp_name": "korOperationUnicode0033", "sample_number": 100, "config_file": "korOperationUnicode0033", "bootcamp_cls_name": "KorOperationUnicode0033bootcamp"}
-{"bootcamp_name": "korOperationUnicode203b", "sample_number": 100, "config_file": "korOperationUnicode203b", "bootcamp_cls_name": "KorOperationUnicode203bbootcamp"}
-{"bootcamp_name": "korOperationUnicode20ac", "sample_number": 100, "config_file": "korOperationUnicode20ac", "bootcamp_cls_name": "KorOperationUnicode20acbootcamp"}
-{"bootcamp_name": "korOperationUnicode221e", "sample_number": 100, "config_file": "korOperationUnicode221e", "bootcamp_cls_name": "KorOperationUnicode221ebootcamp"}
-{"bootcamp_name": "korOperationUnicode2295", "sample_number": 100, "config_file": "korOperationUnicode2295", "bootcamp_cls_name": "KorOperationUnicode2295bootcamp"}
-{"bootcamp_name": "korOperationUnicode25a0", "sample_number": 100, "config_file": "korOperationUnicode25a0", "bootcamp_cls_name": "KorOperationUnicode25a0bootcamp"}
-{"bootcamp_name": "korOperationUnicode25a1", "sample_number": 100, "config_file": "korOperationUnicode25a1", "bootcamp_cls_name": "KorOperationUnicode25a1bootcamp"}
-{"bootcamp_name": "korOperationUnicode25b3", "sample_number": 100, "config_file": "korOperationUnicode25b3", "bootcamp_cls_name": "KorOperationUnicode25b3bootcamp"}
-{"bootcamp_name": "korOperationUnicode25bd", "sample_number": 100, "config_file": "korOperationUnicode25bd", "bootcamp_cls_name": "KorOperationUnicode25bdbootcamp"}
-{"bootcamp_name": "korOperationUnicode25cb", "sample_number": 100, "config_file": "korOperationUnicode25cb", "bootcamp_cls_name": "KorOperationUnicode25cbbootcamp"}
-{"bootcamp_name": "korOperationUnicode25ce", "sample_number": 100, "config_file": "korOperationUnicode25ce", "bootcamp_cls_name": "KorOperationUnicode25cebootcamp"}
-{"bootcamp_name": "korOperationUnicode25cf", "sample_number": 100, "config_file": "korOperationUnicode25cf", "bootcamp_cls_name": "KorOperationUnicode25cfbootcamp"}
-{"bootcamp_name": "korOperationUnicode2605", "sample_number": 100, "config_file": "korOperationUnicode2605", "bootcamp_cls_name": "KorOperationUnicode2605bootcamp"}
-{"bootcamp_name": "korOperationUnicodeffe0", "sample_number": 100, "config_file": "korOperationUnicodeffe0", "bootcamp_cls_name": "KorOperationUnicodeffe0bootcamp"}
-{"bootcamp_name": "korOperationUnicodeffe1", "sample_number": 100, "config_file": "korOperationUnicodeffe1", "bootcamp_cls_name": "KorOperationUnicodeffe1bootcamp"}
-{"bootcamp_name": "korPuzzle24Points", "sample_number": 100, "config_file": "korPuzzle24Points", "bootcamp_cls_name": "KorPuzzle24Pointsbootcamp"}
-{"bootcamp_name": "korPuzzleArrowMaze", "sample_number": 100, "config_file": "korPuzzleArrowMaze", "bootcamp_cls_name": "KorPuzzleArrowMazebootcamp"}
-{"bootcamp_name": "korPuzzleCalcudoko", "sample_number": 100, "config_file": "korPuzzleCalcudoko", "bootcamp_cls_name": "KorPuzzleCalcudokobootcamp"}
-{"bootcamp_name": "korPuzzleCampsite", "sample_number": 100, "config_file": "korPuzzleCampsite", "bootcamp_cls_name": "KorPuzzleCampsitebootcamp"}
-{"bootcamp_name": "korPuzzleConnectWords", "sample_number": 100, "config_file": "korPuzzleConnectWords", "bootcamp_cls_name": "KorPuzzleConnectWordsbootcamp"}
-{"bootcamp_name": "korPuzzleCryptoMath", "sample_number": 100, "config_file": "korPuzzleCryptoMath", "bootcamp_cls_name": "KorPuzzleCryptoMathbootcamp"}
-{"bootcamp_name": "korPuzzleKukurasu", "sample_number": 100, "config_file": "korPuzzleKukurasu", "bootcamp_cls_name": "KorPuzzleKukurasubootcamp"}
-{"bootcamp_name": "korPuzzleLogicPuzzle", "sample_number": 100, "config_file": "korPuzzleLogicPuzzle", "bootcamp_cls_name": "KorPuzzleLogicPuzzlebootcamp"}
-{"bootcamp_name": "korPuzzleMathPath", "sample_number": 100, "config_file": "korPuzzleMathPath", "bootcamp_cls_name": "KorPuzzleMathPathbootcamp"}
-{"bootcamp_name": "korPuzzleMinesweeper", "sample_number": 100, "config_file": "korPuzzleMinesweeper", "bootcamp_cls_name": "KorPuzzleMinesweeperbootcamp"}
-{"bootcamp_name": "korPuzzleSkyscrapers", "sample_number": 100, "config_file": "korPuzzleSkyscrapers", "bootcamp_cls_name": "KorPuzzleSkyscrapersbootcamp"}
-{"bootcamp_name": "korPuzzleWordBrainTeasers", "sample_number": 100, "config_file": "korPuzzleWordBrainTeasers", "bootcamp_cls_name": "KorPuzzleWordBrainTeasersbootcamp"}
-{"bootcamp_name": "korPuzzleWordLadder", "sample_number": 100, "config_file": "korPuzzleWordLadder", "bootcamp_cls_name": "KorPuzzleWordLadderbootcamp"}
-{"bootcamp_name": "korPuzzleWordRootsAndAffixes", "sample_number": 100, "config_file": "korPuzzleWordRootsAndAffixes", "bootcamp_cls_name": "KorPuzzleWordRootsAndAffixesbootcamp"}
-{"bootcamp_name": "korPuzzleWordscapes", "sample_number": 100, "config_file": "korPuzzleWordscapes", "bootcamp_cls_name": "KorPuzzleWordscapesbootcamp"}
-{"bootcamp_name": "korPuzzleWordSearch", "sample_number": 100, "config_file": "korPuzzleWordSearch", "bootcamp_cls_name": "KorPuzzleWordSearchbootcamp"}
-{"bootcamp_name": "LightUp", "sample_number": 100, "config_file": "Light_Up", "bootcamp_cls_name": "LightUpbootcamp"}
-{"bootcamp_name": "maze", "sample_number": 100, "config_file": "maze", "bootcamp_cls_name": "Mazebootcamp"}
-{"bootcamp_name": "minesweeper", "sample_number": 100, "config_file": "minesweeper", "bootcamp_cls_name": "Minesweeperbootcamp"}
-{"bootcamp_name": "nonograms", "sample_number": 100, "config_file": "nonograms", "bootcamp_cls_name": "Nonogramsbootcamp"}
-{"bootcamp_name": "pipes", "sample_number": 100, "config_file": "pipes", "bootcamp_cls_name": "Pipesbootcamp"}
-{"bootcamp_name": "skyscrapers", "sample_number": 100, "config_file": "skyscrapers", "bootcamp_cls_name": "Skyscrapersbootcamp"}
-{"bootcamp_name": "slitherlink", "sample_number": 100, "config_file": "slitherlink", "bootcamp_cls_name": "Slitherlinkbootcamp"}
-{"bootcamp_name": "starbattle", "sample_number": 100, "config_file": "starbattle", "bootcamp_cls_name": "Starbattlebootcamp"}
-{"bootcamp_name": "stitches", "sample_number": 100, "config_file": "stitches", "bootcamp_cls_name": "Stitchesbootcamp"}
-{"bootcamp_name": "sudoku", "sample_number": 100, "config_file": "sudoku", "bootcamp_cls_name": "Sudokubootcamp"}
-{"bootcamp_name": "tents", "sample_number": 100, "config_file": "tents", "bootcamp_cls_name": "Tentsbootcamp"}
-{"bootcamp_name": "thermometers", "sample_number": 100, "config_file": "thermometers", "bootcamp_cls_name": "Thermometersbootcamp"}
+{"bootcamp_name": "medcalculator", "sample_number": 100, "config_file": "med_calculator", "bootcamp_cls_name": "Medcalculatorbootcamp"}
diff --git a/examples/pipelines/data_configs/data_config_train.jsonl b/examples/pipelines/data_configs/data_config_train.jsonl
index 35d358f..ad231ed 100644
--- a/examples/pipelines/data_configs/data_config_train.jsonl
+++ b/examples/pipelines/data_configs/data_config_train.jsonl
@@ -1,96 +1 @@
-{"bootcamp_name": "aquarium", "sample_number": 1000, "config_file": "aquarium", "bootcamp_cls_name": "Aquariumbootcamp"}
-{"bootcamp_name": "arc", "sample_number": 1000, "config_file": "arc", "bootcamp_cls_name": "Arcbootcamp"}
-{"bootcamp_name": "arrowmaze", "sample_number": 1000, "config_file": "arrowmaze", "bootcamp_cls_name": "Arrowmazebootcamp"}
-{"bootcamp_name": "bbehboardgameqa", "sample_number": 1000, "config_file": "bbeh_boardgame_qa", "bootcamp_cls_name": "Bbehboardgameqabootcamp"}
-{"bootcamp_name": "bbehbooleanexpressions", "sample_number": 1000, "config_file": "bbeh_boolean_expressions", "bootcamp_cls_name": "Bbehbooleanexpressionsbootcamp"}
-{"bootcamp_name": "bbehobjectcounting", "sample_number": 1000, "config_file": "bbeh_object_counting", "bootcamp_cls_name": "Bbehobjectcountingbootcamp"}
-{"bootcamp_name": "bbehobjectproperties", "sample_number": 1000, "config_file": "bbeh_object_properties", "bootcamp_cls_name": "Bbehobjectpropertiesbootcamp"}
-{"bootcamp_name": "bbehshuffobject", "sample_number": 1000, "config_file": "bbeh_shuff_object", "bootcamp_cls_name": "Bbehshuffobjectbootcamp"}
-{"bootcamp_name": "BBEHBuggyTables", "sample_number": 1000, "config_file": "BBEHBuggyTables", "bootcamp_cls_name": "BBEHBuggyTablesbootcamp"}
-{"bootcamp_name": "BbehDyckLanguages", "sample_number": 1000, "config_file": "BbehDyckLanguages", "bootcamp_cls_name": "BbehDyckLanguagesbootcamp"}
-{"bootcamp_name": "BbehGeometricShapes", "sample_number": 1000, "config_file": "BbehGeometricShapes", "bootcamp_cls_name": "BbehGeometricShapesbootcamp"}
-{"bootcamp_name": "BbehMultistepArithmetic", "sample_number": 1000, "config_file": "BbehMultistepArithmetic", "bootcamp_cls_name": "BbehMultistepArithmeticbootcamp"}
-{"bootcamp_name": "BBEHMultistepArithmeticV2", "sample_number": 1000, "config_file": "BBEHMultistepArithmeticV2", "bootcamp_cls_name": "BBEHMultistepArithmeticV2bootcamp"}
-{"bootcamp_name": "BbehTemporalSequences", "sample_number": 1000, "config_file": "BbehTemporalSequences", "bootcamp_cls_name": "BbehTemporalSequencesbootcamp"}
-{"bootcamp_name": "BbehWebOfLies", "sample_number": 1000, "config_file": "BbehWebOfLies", "bootcamp_cls_name": "BbehWebOfLiesbootcamp"}
-{"bootcamp_name": "BbehWordSorting", "sample_number": 1000, "config_file": "BbehWordSorting", "bootcamp_cls_name": "BbehWordSortingbootcamp"}
-{"bootcamp_name": "binairo", "sample_number": 1000, "config_file": "binairo", "bootcamp_cls_name": "Binairobootcamp"}
-{"bootcamp_name": "calcudoku", "sample_number": 1000, "config_file": "calcudoku", "bootcamp_cls_name": "Calcudokubootcamp"}
-{"bootcamp_name": "campsite", "sample_number": 1000, "config_file": "campsite", "bootcamp_cls_name": "Campsitebootcamp"}
-{"bootcamp_name": "cipher", "sample_number": 1000, "config_file": "cipher", "bootcamp_cls_name": "Cipherbootcamp"}
-{"bootcamp_name": "cryptomath", "sample_number": 1000, "config_file": "crypto_math", "bootcamp_cls_name": "Cryptomathbootcamp"}
-{"bootcamp_name": "dominosa", "sample_number": 1000, "config_file": "dominosa", "bootcamp_cls_name": "Dominosabootcamp"}
-{"bootcamp_name": "futoshiki", "sample_number": 1000, "config_file": "futoshiki", "bootcamp_cls_name": "Futoshikibootcamp"}
-{"bootcamp_name": "galaxies", "sample_number": 1000, "config_file": "galaxies", "bootcamp_cls_name": "Galaxiesbootcamp"}
-{"bootcamp_name": "game24", "sample_number": 1000, "config_file": "game24", "bootcamp_cls_name": "Game24bootcamp"}
-{"bootcamp_name": "heyawake", "sample_number": 1000, "config_file": "heyawake", "bootcamp_cls_name": "Heyawakebootcamp"}
-{"bootcamp_name": "hitori", "sample_number": 1000, "config_file": "hitori", "bootcamp_cls_name": "Hitoribootcamp"}
-{"bootcamp_name": "kakurasu", "sample_number": 1000, "config_file": "kakurasu", "bootcamp_cls_name": "Kakurasubootcamp"}
-{"bootcamp_name": "kakuro", "sample_number": 1000, "config_file": "kakuro", "bootcamp_cls_name": "Kakurobootcamp"}
-{"bootcamp_name": "korCipherCustomInverseShiftSubstitutionCipher", "sample_number": 1000, "config_file": "korCipherCustomInverseShiftSubstitutionCipher", "bootcamp_cls_name": "KorCipherCustomInverseShiftSubstitutionCipherbootcamp"}
-{"bootcamp_name": "korLogicAnalogicalReasoning", "sample_number": 1000, "config_file": "korLogicAnalogicalReasoning", "bootcamp_cls_name": "KorLogicAnalogicalReasoningbootcamp"}
-{"bootcamp_name": "korLogicCanonicalPropositions", "sample_number": 1000, "config_file": "korLogicCanonicalPropositions", "bootcamp_cls_name": "KorLogicCanonicalPropositionsbootcamp"}
-{"bootcamp_name": "korLogicCooperativePrinciple", "sample_number": 1000, "config_file": "korLogicCooperativePrinciple", "bootcamp_cls_name": "KorLogicCooperativePrinciplebootcamp"}
-{"bootcamp_name": "korLogicDefinitions", "sample_number": 1000, "config_file": "korLogicDefinitions", "bootcamp_cls_name": "KorLogicDefinitionsbootcamp"}
-{"bootcamp_name": "korLogicDerivativeReasoningOfPropositionalLogic", "sample_number": 1000, "config_file": "korLogicDerivativeReasoningOfPropositionalLogic", "bootcamp_cls_name": "KorLogicDerivativeReasoningOfPropositionalLogicbootcamp"}
-{"bootcamp_name": "korLogicDisjunctiveNormalFormAndConjunctiveNormalForm", "sample_number": 1000, "config_file": "korLogicDisjunctiveNormalFormAndConjunctiveNormalForm", "bootcamp_cls_name": "KorLogicDisjunctiveNormalFormAndConjunctiveNormalFormbootcamp"}
-{"bootcamp_name": "korLogicDynamicLogic", "sample_number": 1000, "config_file": "korLogicDynamicLogic", "bootcamp_cls_name": "KorLogicDynamicLogicbootcamp"}
-{"bootcamp_name": "korLogicEnumerativeInductiveReasoning", "sample_number": 1000, "config_file": "korLogicEnumerativeInductiveReasoning", "bootcamp_cls_name": "KorLogicEnumerativeInductiveReasoningbootcamp"}
-{"bootcamp_name": "korLogicEpistemicLogic", "sample_number": 1000, "config_file": "korLogicEpistemicLogic", "bootcamp_cls_name": "KorLogicEpistemicLogicbootcamp"}
-{"bootcamp_name": "korLogicEquivalenceCalculus", "sample_number": 1000, "config_file": "korLogicEquivalenceCalculus", "bootcamp_cls_name": "KorLogicEquivalenceCalculusbootcamp"}
-{"bootcamp_name": "korLogicFigureOfTheSyllogism", "sample_number": 1000, "config_file": "korLogicFigureOfTheSyllogism", "bootcamp_cls_name": "KorLogicFigureOfTheSyllogismbootcamp"}
-{"bootcamp_name": "korLogicFormalFallacies", "sample_number": 1000, "config_file": "korLogicFormalFallacies", "bootcamp_cls_name": "KorLogicFormalFallaciesbootcamp"}
-{"bootcamp_name": "korLogicInductionParadox", "sample_number": 1000, "config_file": "korLogicInductionParadox", "bootcamp_cls_name": "KorLogicInductionParadoxbootcamp"}
-{"bootcamp_name": "korLogicLogicalMethodsForExploringCauseAndEffectRelationships", "sample_number": 1000, "config_file": "korLogicLogicalMethodsForExploringCauseAndEffectRelationships", "bootcamp_cls_name": "KorLogicLogicalMethodsForExploringCauseAndEffectRelationshipsbootcamp"}
-{"bootcamp_name": "korLogicPredicateLogicFormalization", "sample_number": 1000, "config_file": "korLogicPredicateLogicFormalization", "bootcamp_cls_name": "KorLogicPredicateLogicFormalizationbootcamp"}
-{"bootcamp_name": "korLogicPropositionalLogicConcepts", "sample_number": 1000, "config_file": "korLogicPropositionalLogicConcepts", "bootcamp_cls_name": "KorLogicPropositionalLogicConceptsbootcamp"}
-{"bootcamp_name": "korLogicPropositionalLogicFormalization", "sample_number": 1000, "config_file": "korLogicPropositionalLogicFormalization", "bootcamp_cls_name": "KorLogicPropositionalLogicFormalizationbootcamp"}
-{"bootcamp_name": "korLogicResolution", "sample_number": 1000, "config_file": "korLogicResolution", "bootcamp_cls_name": "KorLogicResolutionbootcamp"}
-{"bootcamp_name": "korLogicSpeechActs", "sample_number": 1000, "config_file": "korLogicSpeechActs", "bootcamp_cls_name": "KorLogicSpeechActsbootcamp"}
-{"bootcamp_name": "korLogicStatisticalReasoning", "sample_number": 1000, "config_file": "korLogicStatisticalReasoning", "bootcamp_cls_name": "KorLogicStatisticalReasoningbootcamp"}
-{"bootcamp_name": "korLogicTemporalPropositions", "sample_number": 1000, "config_file": "korLogicTemporalPropositions", "bootcamp_cls_name": "KorLogicTemporalPropositionsbootcamp"}
-{"bootcamp_name": "korLogicTruthValueModalPropositions", "sample_number": 1000, "config_file": "korLogicTruthValueModalPropositions", "bootcamp_cls_name": "KorLogicTruthValueModalPropositionsbootcamp"}
-{"bootcamp_name": "korOperationUnicode0032", "sample_number": 1000, "config_file": "korOperationUnicode0032", "bootcamp_cls_name": "KorOperationUnicode0032bootcamp"}
-{"bootcamp_name": "korOperationUnicode0033", "sample_number": 1000, "config_file": "korOperationUnicode0033", "bootcamp_cls_name": "KorOperationUnicode0033bootcamp"}
-{"bootcamp_name": "korOperationUnicode203b", "sample_number": 1000, "config_file": "korOperationUnicode203b", "bootcamp_cls_name": "KorOperationUnicode203bbootcamp"}
-{"bootcamp_name": "korOperationUnicode20ac", "sample_number": 1000, "config_file": "korOperationUnicode20ac", "bootcamp_cls_name": "KorOperationUnicode20acbootcamp"}
-{"bootcamp_name": "korOperationUnicode221e", "sample_number": 1000, "config_file": "korOperationUnicode221e", "bootcamp_cls_name": "KorOperationUnicode221ebootcamp"}
-{"bootcamp_name": "korOperationUnicode2295", "sample_number": 1000, "config_file": "korOperationUnicode2295", "bootcamp_cls_name": "KorOperationUnicode2295bootcamp"}
-{"bootcamp_name": "korOperationUnicode25a0", "sample_number": 1000, "config_file": "korOperationUnicode25a0", "bootcamp_cls_name": "KorOperationUnicode25a0bootcamp"}
-{"bootcamp_name": "korOperationUnicode25a1", "sample_number": 1000, "config_file": "korOperationUnicode25a1", "bootcamp_cls_name": "KorOperationUnicode25a1bootcamp"}
-{"bootcamp_name": "korOperationUnicode25b3", "sample_number": 1000, "config_file": "korOperationUnicode25b3", "bootcamp_cls_name": "KorOperationUnicode25b3bootcamp"}
-{"bootcamp_name": "korOperationUnicode25bd", "sample_number": 1000, "config_file": "korOperationUnicode25bd", "bootcamp_cls_name": "KorOperationUnicode25bdbootcamp"}
-{"bootcamp_name": "korOperationUnicode25cb", "sample_number": 1000, "config_file": "korOperationUnicode25cb", "bootcamp_cls_name": "KorOperationUnicode25cbbootcamp"}
-{"bootcamp_name": "korOperationUnicode25ce", "sample_number": 1000, "config_file": "korOperationUnicode25ce", "bootcamp_cls_name": "KorOperationUnicode25cebootcamp"}
-{"bootcamp_name": "korOperationUnicode25cf", "sample_number": 1000, "config_file": "korOperationUnicode25cf", "bootcamp_cls_name": "KorOperationUnicode25cfbootcamp"}
-{"bootcamp_name": "korOperationUnicode2605", "sample_number": 1000, "config_file": "korOperationUnicode2605", "bootcamp_cls_name": "KorOperationUnicode2605bootcamp"}
-{"bootcamp_name": "korOperationUnicodeffe0", "sample_number": 1000, "config_file": "korOperationUnicodeffe0", "bootcamp_cls_name": "KorOperationUnicodeffe0bootcamp"}
-{"bootcamp_name": "korOperationUnicodeffe1", "sample_number": 1000, "config_file": "korOperationUnicodeffe1", "bootcamp_cls_name": "KorOperationUnicodeffe1bootcamp"}
-{"bootcamp_name": "korPuzzle24Points", "sample_number": 1000, "config_file": "korPuzzle24Points", "bootcamp_cls_name": "KorPuzzle24Pointsbootcamp"}
-{"bootcamp_name": "korPuzzleArrowMaze", "sample_number": 1000, "config_file": "korPuzzleArrowMaze", "bootcamp_cls_name": "KorPuzzleArrowMazebootcamp"}
-{"bootcamp_name": "korPuzzleCalcudoko", "sample_number": 1000, "config_file": "korPuzzleCalcudoko", "bootcamp_cls_name": "KorPuzzleCalcudokobootcamp"}
-{"bootcamp_name": "korPuzzleCampsite", "sample_number": 1000, "config_file": "korPuzzleCampsite", "bootcamp_cls_name": "KorPuzzleCampsitebootcamp"}
-{"bootcamp_name": "korPuzzleConnectWords", "sample_number": 1000, "config_file": "korPuzzleConnectWords", "bootcamp_cls_name": "KorPuzzleConnectWordsbootcamp"}
-{"bootcamp_name": "korPuzzleCryptoMath", "sample_number": 1000, "config_file": "korPuzzleCryptoMath", "bootcamp_cls_name": "KorPuzzleCryptoMathbootcamp"}
-{"bootcamp_name": "korPuzzleKukurasu", "sample_number": 1000, "config_file": "korPuzzleKukurasu", "bootcamp_cls_name": "KorPuzzleKukurasubootcamp"}
-{"bootcamp_name": "korPuzzleLogicPuzzle", "sample_number": 1000, "config_file": "korPuzzleLogicPuzzle", "bootcamp_cls_name": "KorPuzzleLogicPuzzlebootcamp"}
-{"bootcamp_name": "korPuzzleMathPath", "sample_number": 1000, "config_file": "korPuzzleMathPath", "bootcamp_cls_name": "KorPuzzleMathPathbootcamp"}
-{"bootcamp_name": "korPuzzleMinesweeper", "sample_number": 1000, "config_file": "korPuzzleMinesweeper", "bootcamp_cls_name": "KorPuzzleMinesweeperbootcamp"}
-{"bootcamp_name": "korPuzzleSkyscrapers", "sample_number": 1000, "config_file": "korPuzzleSkyscrapers", "bootcamp_cls_name": "KorPuzzleSkyscrapersbootcamp"}
-{"bootcamp_name": "korPuzzleWordBrainTeasers", "sample_number": 1000, "config_file": "korPuzzleWordBrainTeasers", "bootcamp_cls_name": "KorPuzzleWordBrainTeasersbootcamp"}
-{"bootcamp_name": "korPuzzleWordLadder", "sample_number": 1000, "config_file": "korPuzzleWordLadder", "bootcamp_cls_name": "KorPuzzleWordLadderbootcamp"}
-{"bootcamp_name": "korPuzzleWordRootsAndAffixes", "sample_number": 1000, "config_file": "korPuzzleWordRootsAndAffixes", "bootcamp_cls_name": "KorPuzzleWordRootsAndAffixesbootcamp"}
-{"bootcamp_name": "korPuzzleWordscapes", "sample_number": 1000, "config_file": "korPuzzleWordscapes", "bootcamp_cls_name": "KorPuzzleWordscapesbootcamp"}
-{"bootcamp_name": "korPuzzleWordSearch", "sample_number": 1000, "config_file": "korPuzzleWordSearch", "bootcamp_cls_name": "KorPuzzleWordSearchbootcamp"}
-{"bootcamp_name": "LightUp", "sample_number": 1000, "config_file": "Light_Up", "bootcamp_cls_name": "LightUpbootcamp"}
-{"bootcamp_name": "maze", "sample_number": 1000, "config_file": "maze", "bootcamp_cls_name": "Mazebootcamp"}
-{"bootcamp_name": "minesweeper", "sample_number": 1000, "config_file": "minesweeper", "bootcamp_cls_name": "Minesweeperbootcamp"}
-{"bootcamp_name": "nonograms", "sample_number": 1000, "config_file": "nonograms", "bootcamp_cls_name": "Nonogramsbootcamp"}
-{"bootcamp_name": "pipes", "sample_number": 1000, "config_file": "pipes", "bootcamp_cls_name": "Pipesbootcamp"}
-{"bootcamp_name": "skyscrapers", "sample_number": 1000, "config_file": "skyscrapers", "bootcamp_cls_name": "Skyscrapersbootcamp"}
-{"bootcamp_name": "slitherlink", "sample_number": 1000, "config_file": "slitherlink", "bootcamp_cls_name": "Slitherlinkbootcamp"}
-{"bootcamp_name": "starbattle", "sample_number": 1000, "config_file": "starbattle", "bootcamp_cls_name": "Starbattlebootcamp"}
-{"bootcamp_name": "stitches", "sample_number": 1000, "config_file": "stitches", "bootcamp_cls_name": "Stitchesbootcamp"}
-{"bootcamp_name": "sudoku", "sample_number": 1000, "config_file": "sudoku", "bootcamp_cls_name": "Sudokubootcamp"}
-{"bootcamp_name": "tents", "sample_number": 1000, "config_file": "tents", "bootcamp_cls_name": "Tentsbootcamp"}
-{"bootcamp_name": "thermometers", "sample_number": 1000, "config_file": "thermometers", "bootcamp_cls_name": "Thermometersbootcamp"}
+{"bootcamp_name": "medcalculator", "sample_number": 100000, "config_file": "med_calculator", "bootcamp_cls_name": "Medcalculatorbootcamp"}
\ No newline at end of file
diff --git a/examples/pipelines/puzzle_configs/med_calculator_test.json b/examples/pipelines/puzzle_configs/med_calculator_test.json
new file mode 100644
index 0000000..d2f5385
--- /dev/null
+++ b/examples/pipelines/puzzle_configs/med_calculator_test.json
@@ -0,0 +1,3 @@
+[
+ {"conf_file":"./internbootcamp/libs/med_calculator/med_calculator.json"}
+]
\ No newline at end of file
diff --git a/examples/pipelines/puzzle_configs/med_calculator_train.json b/examples/pipelines/puzzle_configs/med_calculator_train.json
new file mode 100644
index 0000000..d2f5385
--- /dev/null
+++ b/examples/pipelines/puzzle_configs/med_calculator_train.json
@@ -0,0 +1,3 @@
+[
+ {"conf_file":"./internbootcamp/libs/med_calculator/med_calculator.json"}
+]
\ No newline at end of file
diff --git a/examples/pipelines/quickgen_data_configs.py b/examples/pipelines/quickgen_data_configs.py
index ebdac49..9811787 100644
--- a/examples/pipelines/quickgen_data_configs.py
+++ b/examples/pipelines/quickgen_data_configs.py
@@ -8,7 +8,7 @@ import glob
import re
# 每个puzzle的gen数量
-train_sample_number = 1000
+train_sample_number = 10000
test_sample_number = 100
def checkpath(target_dir):
diff --git a/examples/pipelines/run_pipeline.sh b/examples/pipelines/run_pipeline.sh
index d1d3382..644e373 100755
--- a/examples/pipelines/run_pipeline.sh
+++ b/examples/pipelines/run_pipeline.sh
@@ -17,8 +17,10 @@ max_prompt_len=4096
max_jobs=60 # 设置最大并发进程数
jobs=() # 用于存储后台进程的PID
+
+# initialize, do not modify this
cipher_test_nums_for_single_cipher=0
-cipehr_train_nums_for_single_cipher=0
+cipher_train_nums_for_single_cipher=0
while IFS= read -r line || [ -n "$line" ]; do
# 跳过空行
@@ -135,7 +137,7 @@ python examples/pipelines/cipher_data_generator.py \
# cipher train——set gen
python examples/pipelines/cipher_data_generator.py \
- --nums $cipehr_train_nums_for_single_cipher \
+ --nums $cipher_train_nums_for_single_cipher \
--split train \
--timestamp $timestamp \
--filepath $cipher_input_file
diff --git a/examples/unittests/run_eval.py b/examples/unittests/run_eval.py
index 0c1aede..3190df6 100644
--- a/examples/unittests/run_eval.py
+++ b/examples/unittests/run_eval.py
@@ -20,6 +20,7 @@ TEMPLATE_MAP = {
"qwen": {"chat_template":"<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n<|im_start|>user\n{input}<|im_end|>\n<|im_start|>assistant\n","stop_words":["<|im_end|>", "<|endoftext|>"]}, # default qwen template
"internthinker":{"chat_template":"<|im_start|>system\nYou are an expert reasoner with extensive experience in mathematical and code competitions. You approach problems through systematic thinking and rigorous reasoning. Your response should reflect deep understanding and precise logical thinking, making your solution path and reasoning clear to others. Please put your thinking process within ... tags.<|im_end|>\n<|im_start|>user\n{input}<|im_end|>\n<|im_start|>assistant\n","stop_words":["<|im_end|>", "<|endoftext|>"]},
"internbootcamp":{"chat_template":"<|im_start|>system\nYou are an expert reasoner with extensive experience in mathematical and code competitions. You approach problems through systematic thinking and rigorous reasoning. Your response should reflect deep understanding and precise logical thinking, making your solution path and reasoning clear to others. Please put your thinking process within ... tags. After careful thought, present your final solution or answer clearly.<|im_end|>\n<|im_start|>user\n{input}<|im_end|>\n<|im_start|>assistant\n","stop_words":["<|im_end|>", "<|endoftext|>"]},
+ "internbootcamp_v2":{"chat_template":"<|im_start|>system\nYou are a helpful assistant, skilled at solving various complex reasoning problems. When faced with any user questions, please first conduct a detailed thinking process, similar to drafting, where you can freely analyze problem-solving strategies and verify the correctness of your thought process. Please put your thinking process within and tags. After completing the thinking process, provide the user with a detailed response. Please note that the response accessible to the user will start after \"\", so ensure that detailed chain-of-thought solution steps should be provided after the tag.<|im_end|>\n<|im_start|>user\n{input}<|im_end|>\n<|im_start|>assistant\n","stop_words":["<|im_end|>", "<|endoftext|>"]},
"chatml":{"chat_template":"<|im_start|>user\n{input}<|im_end|>\n<|im_start|>assistant\n","stop_words":["<|im_end|>", "<|endoftext|>"]}, # No sys prompt chatml
}
@@ -249,13 +250,13 @@ async def main():
help='Base URL of the OpenAI API compatible service. Default format is http://{ip}:{port}/v1.')
parser.add_argument('--api_key', default='EMPTY',
help='API key for accessing the model service. Set to "EMPTY" if no key is required.')
- parser.add_argument('--model_name', default='DeepSeek-R1-Distill-Qwen-32B',
+ parser.add_argument('--model_name', default='Qwen2.5-32B-Instruct',
help='Name of the model to be evaluated, e.g., r1_32B or other custom model name.')
- parser.add_argument('--test_dir', default='/cpfs01/shared/llm_ddd/lipeiji/InternBootcamp/examples/bootcamp_generator_outputs/2025-05-30-16:26:35/test',
+ parser.add_argument('--test_dir', default='/cpfs01/shared/llm_ddd/lipeiji/InternBootcamp/examples/bootcamp_generator_outputs/2025-06-12-14:29:13/test',
help='Path to the directory containing test JSONL files for evaluation.')
parser.add_argument('--max_concurrent_requests', type=int, default=144,
help='Maximum number of concurrent requests allowed globally.')
- parser.add_argument('--template', default='r1',choices=['r1', 'qwen', 'internthinker', 'chatml'],
+ parser.add_argument('--template', default='internbootcamp_v2',choices=['r1', 'qwen', 'internthinker', 'chatml','internbootcamp'],
help='Predefined conversation template used to format prompts. Only valid when api_mode is completion.')
parser.add_argument('--max_tokens', type=int, default=8192,
help='Maximum number of tokens the model can generate.')
diff --git a/examples/verl_usage/verl_data_preprocess.py b/examples/verl_usage/verl_data_preprocess.py
index 109e026..dadb151 100644
--- a/examples/verl_usage/verl_data_preprocess.py
+++ b/examples/verl_usage/verl_data_preprocess.py
@@ -94,7 +94,7 @@ def convert_to_parquet(src_jsonl, tgt_parquet, split, shuffle=True):
"prompt": [
{
"role": "system",
- "content": "You are an expert reasoner with extensive experience in mathematical and code competitions. You approach problems through systematic thinking and rigorous reasoning. Your response should reflect deep understanding and precise logical thinking, making your solution path and reasoning clear to others. Please put your thinking process within ... tags. After careful thought, present your final solution or answer clearly."
+ "content": "You are a helpful assistant, skilled at solving various complex reasoning problems. When faced with any user questions, please first conduct a detailed thinking process, similar to drafting, where you can freely analyze problem-solving strategies and verify the correctness of your thought process. Please put your thinking process within and tags. After completing the thinking process, provide the user with a detailed response. Please note that the response accessible to the user will start after \"\", so ensure that detailed chain-of-thought solution steps should be provided after the tag."
},
{
"role": "user",
diff --git a/figs/auto_pipeline.png b/figs/auto_pipeline.png
old mode 100644
new mode 100755
diff --git a/figs/auto_pipeline_cn.png b/figs/auto_pipeline_cn.png
old mode 100644
new mode 100755
diff --git a/figs/demo_internthinkerGO.png b/figs/demo_internthinkerGO.png
old mode 100644
new mode 100755
diff --git a/figs/interface.png b/figs/interface.png
old mode 100644
new mode 100755
diff --git a/figs/logo.png b/figs/logo.png
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/__init__.py b/internbootcamp/bootcamp/__init__.py
index 678a6f5..7922456 100755
--- a/internbootcamp/bootcamp/__init__.py
+++ b/internbootcamp/bootcamp/__init__.py
@@ -1083,4 +1083,5 @@ from .clru.clru import Clrubootcamp
from .eguessthetree.eguessthetree import Eguessthetreebootcamp
from .ddistinctpaths.ddistinctpaths import Ddistinctpathsbootcamp
from .eereaderdisplay.eereaderdisplay import Eereaderdisplaybootcamp
-from .clunarnewyearandnumberdivision.clunarnewyearandnumberdivision import Clunarnewyearandnumberdivisionbootcamp
\ No newline at end of file
+from .clunarnewyearandnumberdivision.clunarnewyearandnumberdivision import Clunarnewyearandnumberdivisionbootcamp
+from .med_calculator.med_calculator import Medcalculatorbootcamp
\ No newline at end of file
diff --git a/internbootcamp/bootcamp/base.py b/internbootcamp/bootcamp/base.py
index a0b336a..0660606 100755
--- a/internbootcamp/bootcamp/base.py
+++ b/internbootcamp/bootcamp/base.py
@@ -47,7 +47,7 @@ class Basebootcamp:
@classmethod
- def verify_score(cls, model_output, identity: dict, format_score=0, short_penalty=False, short_threshold=100, format_penalty=False) -> float:
+ def verify_score(cls, model_output, identity: dict, format_score=0, short_penalty=False, short_threshold=256, ans_threshold=128, format_penalty=False) -> float:
"""
Verify the output against the ground truth.
@@ -60,9 +60,6 @@ class Basebootcamp:
float: The score of the output.
"""
score = 0.
- if short_penalty and len(model_output) < short_threshold:
- # if the output is too short, consider it incorrect
- return score
if format_penalty and ("" not in model_output or "" not in model_output):
return score
if format_penalty and (model_output.count("") > 1 or model_output.count("") > 1 or model_output.count("") != model_output.count("") or not model_output.startswith("") or model_output.endswith("")):
@@ -84,6 +81,14 @@ class Basebootcamp:
except Exception as e:
# print("Error in verify_score:", e)
pass
+
+ ans_output = model_output.rsplit("", 1)[1] if "" in model_output else ""
+
+ if (short_penalty and len(model_output) < short_threshold) or (short_penalty and len(ans_output) < ans_threshold):
+ # if the output is too short, consider it incorrect
+ return min(score * len(model_output) / short_threshold, score * len(ans_output) / ans_threshold)
+
+ # This for training Debug
if random.randint(1,1024) == 1:
print("=============DEBUG=============")
print("model_output:\n", model_output)
diff --git a/internbootcamp/bootcamp/bigcodebench/bigcodebench.py b/internbootcamp/bootcamp/bigcodebench/bigcodebench.py
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/codeio/codeio.py b/internbootcamp/bootcamp/codeio/codeio.py
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/codeio/codeio_utils.py b/internbootcamp/bootcamp/codeio/codeio_utils.py
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/instruction_following/autoif.py b/internbootcamp/bootcamp/instruction_following/autoif.py
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/kodcode/kodcode.py b/internbootcamp/bootcamp/kodcode/kodcode.py
old mode 100644
new mode 100755
diff --git a/internbootcamp/bootcamp/med_calculator/med_calculator.py b/internbootcamp/bootcamp/med_calculator/med_calculator.py
old mode 100644
new mode 100755
index 67d127f..601a9ae
--- a/internbootcamp/bootcamp/med_calculator/med_calculator.py
+++ b/internbootcamp/bootcamp/med_calculator/med_calculator.py
@@ -1,7 +1,7 @@
import json
import math
import random
-from internbootcamp.bootcamp.base import Basebootcamp
+from bootcamp import Basebootcamp
def remove_boxed(s):
if "\\boxed " in s:
@@ -45,8 +45,8 @@ def last_boxed_only_string(string):
return retval
-class MedCalculatorSandbox(Basebootcamp): # 医学计算器类
- def __init__(self, conf_file="med_calculator.json", seed=None):
+class Medcalculatorbootcamp(Basebootcamp): # 医学计算器类
+ def __init__(self, conf_file="./internbootcamp/libs/med_calculator/med_calculator.json", seed=None):
random.seed(seed)
with open(conf_file, "r", encoding="utf-8") as f:
self.config = json.load(f)
@@ -154,7 +154,7 @@ class MedCalculatorSandbox(Basebootcamp): # 医学计算器类
return cases
if __name__ == '__main__':
- bootcamp = MedCalculatorSandbox(seed=42)
+ bootcamp = MedCalculatorbootcamp(seed=42)
identity = bootcamp.case_generator()
print(f'{identity = }')
diff --git a/internbootcamp/bootcamp/med_calculator/med_calculator.json b/internbootcamp/libs/med_calculator/med_calculator.json
similarity index 100%
rename from internbootcamp/bootcamp/med_calculator/med_calculator.json
rename to internbootcamp/libs/med_calculator/med_calculator.json
diff --git a/setup.py b/setup.py
new file mode 100755
index 0000000..033418b
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,34 @@
+import setuptools
+
+setuptools.setup(
+ name="internbootcamp",
+ version="0.1.0",
+ url="https://github.com/InternLM/InternBootcamp/tree/main",
+ packages=setuptools.find_packages(include=['internbootcamp',]),
+ install_requires=[
+ "distance",
+ "matplotlib",
+ "datasets",
+ "jsonlines",
+ "fire",
+ "Faker",
+ "python-sat",
+ "sympy",
+ "openai",
+ "openpyxl",
+ "transformers",
+ "langdetect",
+ "pympler",
+ "shortuuid"
+ ],
+
+ package_data={
+
+ },
+ classifiers=[
+ "Programming Language :: Python :: 3",
+ "License :: OSI Approved :: MIT License",
+ "Operating System :: OS Independent",
+ ],
+ python_requires='>=3.6',
+)
\ No newline at end of file