aait 2.3.8.2__tar.gz → 2.3.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aait-2.3.9/PKG-INFO +9 -0
- aait-2.3.9/aait.egg-info/PKG-INFO +9 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/SOURCES.txt +0 -17
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/subprocess_management.py +5 -5
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWAAITResourcesManager.py +1 -1
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWAccumulator.py +43 -36
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWExtractTokens.py +2 -4
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLargeLanguageModel.py +2 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owaccumulator.ui +1 -1
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owlargelanguagemodel.ui +11 -1
- aait-2.3.9/orangecontrib/AAIT/widgets/icons/owlargelanguagemodel.svg +55 -0
- {aait-2.3.8.2 → aait-2.3.9}/setup.py +1 -1
- aait-2.3.8.2/PKG-INFO +0 -28
- aait-2.3.8.2/aait.egg-info/PKG-INFO +0 -28
- aait-2.3.8.2/orangecontrib/AAIT/llm/MergeBaseLora.py +0 -79
- aait-2.3.8.2/orangecontrib/AAIT/llm/SERV_kill_workflow.py +0 -17
- aait-2.3.8.2/orangecontrib/AAIT/llm/SERV_requests.py +0 -73
- aait-2.3.8.2/orangecontrib/AAIT/llm/SERV_start_workflow.py +0 -17
- aait-2.3.8.2/orangecontrib/AAIT/llm/Tutorial_Finetuning.py +0 -170
- aait-2.3.8.2/orangecontrib/AAIT/llm/Tutorial_TestFinetuning.py +0 -53
- aait-2.3.8.2/orangecontrib/AAIT/llm/finetuning.py +0 -250
- aait-2.3.8.2/orangecontrib/AAIT/llm/functions_DatasetGeneration.py +0 -334
- aait-2.3.8.2/orangecontrib/AAIT/llm/functions_Finetuning.py +0 -124
- aait-2.3.8.2/orangecontrib/AAIT/llm/main_DatasetGeneration.py +0 -68
- aait-2.3.8.2/orangecontrib/AAIT/llm/main_Finetuning.py +0 -96
- aait-2.3.8.2/orangecontrib/AAIT/llm/quickpy.py +0 -99
- aait-2.3.8.2/orangecontrib/AAIT/llm/test.py +0 -38
- aait-2.3.8.2/orangecontrib/AAIT/llm/test_functions.py +0 -0
- aait-2.3.8.2/orangecontrib/AAIT/widgets/designer/owchunkanalysis.ui +0 -64
- aait-2.3.8.2/orangecontrib/AAIT/widgets/icons/chunking_analysis.png +0 -0
- aait-2.3.8.2/orangecontrib/AAIT/widgets/icons/owlargelanguagemodel.svg +0 -25
- {aait-2.3.8.2 → aait-2.3.9}/License.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/dependency_links.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/entry_points.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/namespace_packages.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/requires.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/aait.egg-info/top_level.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/fix_torch/fix_torch_dll_error.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/fix_torch/libomp140.x86_64.dll +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/answers.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/answers_llama.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/chunking.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/embeddings.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/lemmes.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/lmstudio.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/process_documents.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/prompt_management.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/llm/translations.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/optimiser/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/optimiser/optuna_multi.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/MetManagement.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/OperationSystem.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/SimpleDialogQt.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/aait_repo_file.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/aait_table_viewer.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/base_widget.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/delta_local_shared_fodler.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/import_uic.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/initialize_from_ini.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/mac_utils.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/shared_functions.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/shared_variables.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/thread_management.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/tools/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/tools/change_owcorpus.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/tools/concat_splitted_pypi.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/tools/first_time_check.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/tools/owcorpus_ok.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/unlink_table_domain.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/utils/windows_utils.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWAddColumns.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWApplyRules.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWCN2rule_view.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWChunking.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWConcatRules.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWConverseLLM.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWCreateEmbeddings.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWDisplayMD.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWEditTable.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWEmptySwitch.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWEndLoop.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWExecuteScript.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWExtraChunks.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWFileMetadata.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWFileSyncChecker.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWFileWithPath.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWFindFilesFromDir.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWFusionNM.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWGenerateQuestions.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWGenerateSynthesis.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWGenerateWord.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWInputSelector.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWKeywords.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWKeywordsDetection.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLLMEngine.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLMStudio.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLanguageDetection.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLemmatizer.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWLoadDocuments.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_CE_MiniLML6.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Falcon.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_HelsinkiEnFr.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_HelsinkiFrEn.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_MPNET.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Mistral.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen1B5_Q6.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen2_5_32B.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen3B_Q4.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q4.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q6.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_Solar.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_SolarUncensored.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_EN.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_FR.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWOperationSystem.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWOptimisation.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWOptimisationSelection.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWOptimisationSendScore.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWProcessDocumentsFromPath.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWQueryLLM.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWRandomData.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWReranking.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWSaveFilepathEntry.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWSelectColumnDynamique.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWSelectRowsDynamic.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWSortAndSelect.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWStartLoop.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWTable2Corpus.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWTranslation.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWTrigger.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/OWUnzipFolder.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/POW_Wfactory.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owMarkdown.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/ow_OperationSystem.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/ow_in_or_out_path.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/ow_widget_random_data.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owaddcolumns.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owapplyrules.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owchunking.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owconcatrules.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owconversellm.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owedgellm.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owembeddings.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owemptyswitch.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owendloop.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owexecutescript.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owexecutescript_TEST.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owextrachunks.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owextracttokens.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owfilemetadata.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owfilesyncchecker.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owfilewithpath.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owfindfilesfromdir.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owfusion_nm.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owgenerate_word.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owgeneratequestions.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owgeneratesynthesis.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owkeyword.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owkeywordsdetection.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owlangdetect.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owlemmatizer.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owllm4all.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owloaddocuments.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owloadworkflow.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_ce_minilml6.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_falcon.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_en_fr.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_fr_en.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_mistral.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_mpnet.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_2.5_32b.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_1.5b_q6.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_3b_q4.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q4.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q6.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_qwencoder_7b.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_solar.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_solar_uncensored.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_en.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_fr.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/ownumberpointinrules.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owprocessdocuments.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owqueryllm.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owreranking.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owsavewithpath.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owselect_column_dynamic.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owselect_row_dynamic.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owsortandselect.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owstartloop.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owtable2corpus.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owtranslation.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owtrigger.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/designer/owunzipfolder.ui +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/CN2RuleViewer.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/MDViewer.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/Mistral.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/apply_rules.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/blue_down_arrow.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/category.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/dark_green.txt +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/de.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/document_generator.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/documents.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/edge_llm.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/endloop.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/extra_chunks.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/green_check.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/in_or_out.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/input.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/languages.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/lm_studio.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/local_interf_img_multi_pull.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/local_interf_multi_pull.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/local_interf_pull.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/local_interf_push.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/local_interf_text_pull.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/logo_solar.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/logo_uncensoredsolar.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/logo_upload.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/models.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/operationSystem.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/optimisation.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/optimizer.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/output.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owCN2_intersect_rules.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owaccumulator.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owchunking.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owconversellm.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owedittable.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owembeddings.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owemptyswitch.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owenvinfo.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owexecutescript.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owextracttokens.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owfilemetadata.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owfilesfromdir.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owfilesyncchecker.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owfilewithpath.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owfusion_nm.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owgeneratequestions.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owgeneratesynthesis.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owkeywords.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owkeywordsdetection.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owlemmatizer.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owloaddocuments.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_ce_minilml6.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_falcon.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_en_fr.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_fr_en.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_mpnet.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_en.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_fr.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owoptimisation.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owoptimisationselection.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owqueryllm.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owreranking.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owsavefilepathentry.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owselectcolumndynamique.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owsortandselect.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owtable2corpus.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owtranslation.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/owtrigger.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/processdocuments.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/qwen-color.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/select_dynamic_row.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/startloop.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/tools.png +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/widgetFactory.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/AAIT/widgets/icons/zip.svg +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/orangecontrib/__init__.py +0 -0
- {aait-2.3.8.2 → aait-2.3.9}/setup.cfg +0 -0
aait-2.3.9/PKG-INFO
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aait
|
|
3
|
+
Version: 2.3.9
|
|
4
|
+
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
+
Home-page:
|
|
6
|
+
Author: Orange community
|
|
7
|
+
Author-email:
|
|
8
|
+
Keywords: orange3 add-on
|
|
9
|
+
License-File: License.txt
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aait
|
|
3
|
+
Version: 2.3.9
|
|
4
|
+
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
+
Home-page:
|
|
6
|
+
Author: Orange community
|
|
7
|
+
Author-email:
|
|
8
|
+
Keywords: orange3 add-on
|
|
9
|
+
License-File: License.txt
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
License.txt
|
|
2
|
-
setup.cfg
|
|
3
2
|
setup.py
|
|
4
3
|
aait.egg-info/PKG-INFO
|
|
5
4
|
aait.egg-info/SOURCES.txt
|
|
@@ -12,29 +11,15 @@ orangecontrib/__init__.py
|
|
|
12
11
|
orangecontrib/AAIT/__init__.py
|
|
13
12
|
orangecontrib/AAIT/fix_torch/fix_torch_dll_error.py
|
|
14
13
|
orangecontrib/AAIT/fix_torch/libomp140.x86_64.dll
|
|
15
|
-
orangecontrib/AAIT/llm/MergeBaseLora.py
|
|
16
|
-
orangecontrib/AAIT/llm/SERV_kill_workflow.py
|
|
17
|
-
orangecontrib/AAIT/llm/SERV_requests.py
|
|
18
|
-
orangecontrib/AAIT/llm/SERV_start_workflow.py
|
|
19
|
-
orangecontrib/AAIT/llm/Tutorial_Finetuning.py
|
|
20
|
-
orangecontrib/AAIT/llm/Tutorial_TestFinetuning.py
|
|
21
14
|
orangecontrib/AAIT/llm/__init__.py
|
|
22
15
|
orangecontrib/AAIT/llm/answers.py
|
|
23
16
|
orangecontrib/AAIT/llm/answers_llama.py
|
|
24
17
|
orangecontrib/AAIT/llm/chunking.py
|
|
25
18
|
orangecontrib/AAIT/llm/embeddings.py
|
|
26
|
-
orangecontrib/AAIT/llm/finetuning.py
|
|
27
|
-
orangecontrib/AAIT/llm/functions_DatasetGeneration.py
|
|
28
|
-
orangecontrib/AAIT/llm/functions_Finetuning.py
|
|
29
19
|
orangecontrib/AAIT/llm/lemmes.py
|
|
30
20
|
orangecontrib/AAIT/llm/lmstudio.py
|
|
31
|
-
orangecontrib/AAIT/llm/main_DatasetGeneration.py
|
|
32
|
-
orangecontrib/AAIT/llm/main_Finetuning.py
|
|
33
21
|
orangecontrib/AAIT/llm/process_documents.py
|
|
34
22
|
orangecontrib/AAIT/llm/prompt_management.py
|
|
35
|
-
orangecontrib/AAIT/llm/quickpy.py
|
|
36
|
-
orangecontrib/AAIT/llm/test.py
|
|
37
|
-
orangecontrib/AAIT/llm/test_functions.py
|
|
38
23
|
orangecontrib/AAIT/llm/translations.py
|
|
39
24
|
orangecontrib/AAIT/optimiser/__init__.py
|
|
40
25
|
orangecontrib/AAIT/optimiser/optuna_multi.py
|
|
@@ -135,7 +120,6 @@ orangecontrib/AAIT/widgets/designer/ow_widget_random_data.ui
|
|
|
135
120
|
orangecontrib/AAIT/widgets/designer/owaccumulator.ui
|
|
136
121
|
orangecontrib/AAIT/widgets/designer/owaddcolumns.ui
|
|
137
122
|
orangecontrib/AAIT/widgets/designer/owapplyrules.ui
|
|
138
|
-
orangecontrib/AAIT/widgets/designer/owchunkanalysis.ui
|
|
139
123
|
orangecontrib/AAIT/widgets/designer/owchunking.ui
|
|
140
124
|
orangecontrib/AAIT/widgets/designer/owconcatrules.ui
|
|
141
125
|
orangecontrib/AAIT/widgets/designer/owconversellm.ui
|
|
@@ -199,7 +183,6 @@ orangecontrib/AAIT/widgets/icons/Mistral.png
|
|
|
199
183
|
orangecontrib/AAIT/widgets/icons/apply_rules.svg
|
|
200
184
|
orangecontrib/AAIT/widgets/icons/blue_down_arrow.svg
|
|
201
185
|
orangecontrib/AAIT/widgets/icons/category.svg
|
|
202
|
-
orangecontrib/AAIT/widgets/icons/chunking_analysis.png
|
|
203
186
|
orangecontrib/AAIT/widgets/icons/dark_green.txt
|
|
204
187
|
orangecontrib/AAIT/widgets/icons/de.png
|
|
205
188
|
orangecontrib/AAIT/widgets/icons/document_generator.png
|
|
@@ -19,7 +19,7 @@ def open_hide_terminal(command, with_qt=True, env=None):
|
|
|
19
19
|
if env is None:
|
|
20
20
|
env = dict(os.environ)
|
|
21
21
|
if not with_qt:
|
|
22
|
-
if sys.platform.startswith("darwin"):
|
|
22
|
+
if sys.platform.startswith("Darwin") or sys.platform.startswith("darwin"):
|
|
23
23
|
print("Warning: 'offscreen' mode may not be fully supported on Mac.")
|
|
24
24
|
else:
|
|
25
25
|
env['QT_QPA_PLATFORM'] = 'offscreen'
|
|
@@ -67,7 +67,7 @@ def open_hide_terminal(command, with_qt=True, env=None):
|
|
|
67
67
|
env=env)
|
|
68
68
|
|
|
69
69
|
|
|
70
|
-
elif sys.platform.startswith("darwin"):
|
|
70
|
+
elif sys.platform.startswith("Darwin") or sys.platform.startswith("darwin") :
|
|
71
71
|
command_chaine = ' '.join(command)
|
|
72
72
|
if hide_terminal:
|
|
73
73
|
if with_qt == False:
|
|
@@ -111,7 +111,7 @@ def open_terminal(command, with_qt=True, env=None):
|
|
|
111
111
|
if env is None:
|
|
112
112
|
env = dict(os.environ)
|
|
113
113
|
if not with_qt:
|
|
114
|
-
if sys.platform.startswith("darwin"):
|
|
114
|
+
if sys.platform.startswith("Darwin") or sys.platform.startswith("darwin"):
|
|
115
115
|
print("Warning: 'offscreen' mode may not be fully supported on Mac.")
|
|
116
116
|
else:
|
|
117
117
|
env['QT_QPA_PLATFORM'] = 'offscreen'
|
|
@@ -145,7 +145,7 @@ def open_terminal(command, with_qt=True, env=None):
|
|
|
145
145
|
else:
|
|
146
146
|
raise RuntimeError("Impossible d'ouvrir le terminal.")
|
|
147
147
|
|
|
148
|
-
elif sys.platform.startswith("darwin"):
|
|
148
|
+
elif sys.platform.startswith("Darwin") or sys.platform.startswith("darwin"):
|
|
149
149
|
# macOS: on écrit $$ (PID du shell) dans un fichier, puis on remplace le shell avec exec
|
|
150
150
|
pidfile = tempfile.NamedTemporaryFile(delete=False)
|
|
151
151
|
pidfile_path = pidfile.name
|
|
@@ -267,7 +267,7 @@ def kill_process_tree(pid):
|
|
|
267
267
|
print(f"Tuer enfant PID {child.pid} ({child.name()})")
|
|
268
268
|
child.kill()
|
|
269
269
|
|
|
270
|
-
if sys.platform.startswith("darwin"):
|
|
270
|
+
if sys.platform.startswith("Darwin") or sys.platform.startswith("darwin"):
|
|
271
271
|
# Attendre un peu pour que les enfants meurent proprement
|
|
272
272
|
gone, alive = psutil.wait_procs(children, timeout=3)
|
|
273
273
|
for p in alive:
|
|
@@ -196,7 +196,7 @@ class OWAAITResourcesManager(widget.OWWidget):
|
|
|
196
196
|
QTimer.singleShot(0, self.close)
|
|
197
197
|
def open_explorer(self):
|
|
198
198
|
path = MetManagement.get_local_store_path()
|
|
199
|
-
if sys.platform.startswith("darwin"):
|
|
199
|
+
if sys.platform.startswith("Darwin") or sys.platform.startswith("darwin"):
|
|
200
200
|
import subprocess
|
|
201
201
|
subprocess.run(["open", path])
|
|
202
202
|
return
|
|
@@ -2,7 +2,7 @@ from Orange.widgets import widget
|
|
|
2
2
|
import sys
|
|
3
3
|
import os
|
|
4
4
|
|
|
5
|
-
from AnyQt.QtWidgets import QApplication
|
|
5
|
+
from AnyQt.QtWidgets import QApplication, QPushButton, QCheckBox
|
|
6
6
|
from Orange.widgets.utils.signals import Input, Output
|
|
7
7
|
from Orange.data import Domain, Table
|
|
8
8
|
|
|
@@ -23,78 +23,89 @@ class OWAccumulator(widget.OWWidget):
|
|
|
23
23
|
if "site-packages/Orange/widgets" in os.path.dirname(os.path.abspath(__file__)).replace("\\", "/"):
|
|
24
24
|
icon = "icons_dev/owaccumulator.png"
|
|
25
25
|
|
|
26
|
-
# Le chemin du fichier .ui
|
|
27
26
|
gui = os.path.join(os.path.dirname(os.path.abspath(__file__)), "designer/owaccumulator.ui")
|
|
28
|
-
priority = 1094
|
|
29
27
|
|
|
30
28
|
want_main_area = True
|
|
31
|
-
# want_control_area est mis à False pour utiliser l'UI chargée dans mainArea
|
|
32
29
|
want_control_area = False
|
|
33
30
|
|
|
34
31
|
class Inputs:
|
|
35
32
|
data = Input("Input Data", Table, auto_summary=False)
|
|
33
|
+
trigger = Input("Trigger", Table, auto_summary=False)
|
|
36
34
|
|
|
37
35
|
class Outputs:
|
|
38
36
|
sample = Output("Output", Table, auto_summary=False)
|
|
39
|
-
preview = Output("Preview", Table, auto_summary=False)
|
|
40
37
|
|
|
41
38
|
def __init__(self):
|
|
42
39
|
super().__init__()
|
|
43
40
|
|
|
44
|
-
# ---
|
|
45
|
-
# Charge le contenu du .ui dans l'instance du widget (self)
|
|
41
|
+
# --- Chargement du fichier UI ---
|
|
46
42
|
uic.loadUi(self.gui, self)
|
|
47
43
|
|
|
48
|
-
#
|
|
49
|
-
self.
|
|
44
|
+
# --- Récupération dynamique des widgets ---
|
|
45
|
+
self.checkBox_send = self.findChild(QCheckBox, 'checkBox_send')
|
|
46
|
+
self.pushButton_send = self.findChild(QPushButton, 'pushButton_send')
|
|
50
47
|
|
|
51
|
-
# --- Variables d
|
|
48
|
+
# --- Variables d’état ---
|
|
52
49
|
self.data = None
|
|
53
50
|
self.out_data = None
|
|
51
|
+
self.str_auto_send = "True" # valeur par défaut ; peut être persistée via ini
|
|
52
|
+
|
|
53
|
+
# --- Initialisation de la checkbox ---
|
|
54
|
+
if self.checkBox_send is not None:
|
|
55
|
+
# Restauration de l’état précédent
|
|
56
|
+
if self.str_auto_send != "False":
|
|
57
|
+
self.checkBox_send.setChecked(True)
|
|
58
|
+
else:
|
|
59
|
+
self.checkBox_send.setChecked(False)
|
|
60
|
+
|
|
61
|
+
# ✅ Connexion au changement d’état
|
|
62
|
+
self.checkBox_send.stateChanged.connect(self.update_auto_send_state)
|
|
63
|
+
|
|
64
|
+
# --- Connexion du bouton manuel ---
|
|
65
|
+
if self.pushButton_send is not None:
|
|
66
|
+
self.pushButton_send.clicked.connect(self.push)
|
|
54
67
|
|
|
55
|
-
# --- Appel à post_initialized pour l'alignement ---
|
|
56
68
|
self.post_initialized()
|
|
57
69
|
|
|
70
|
+
def update_auto_send_state(self):
|
|
71
|
+
self.str_auto_send = "True" if self.checkBox_send.isChecked() else "False"
|
|
72
|
+
|
|
58
73
|
def push(self):
|
|
59
74
|
"""Sends the accumulated data and resets the accumulator."""
|
|
60
75
|
if self.data is not None:
|
|
61
76
|
self.out_data = self.data.copy()
|
|
62
|
-
|
|
63
|
-
# Send the final output
|
|
64
77
|
self.Outputs.sample.send(self.out_data)
|
|
65
|
-
|
|
66
|
-
# Purge the accumulator
|
|
67
|
-
self.data = None
|
|
68
|
-
self.Outputs.preview.send(None) # Clear preview after purge
|
|
69
|
-
self.information("Data sent and accumulator purged.")
|
|
70
78
|
else:
|
|
71
79
|
self.Outputs.sample.send(None)
|
|
72
80
|
self.warning("Accumulator is empty, nothing to send.")
|
|
73
81
|
|
|
82
|
+
@Inputs.trigger
|
|
83
|
+
def on_trigger(self, signal_data):
|
|
84
|
+
"""Handles the incoming trigger signal."""
|
|
85
|
+
if self.data is not None:
|
|
86
|
+
self.Outputs.sample.send(self.data.copy())
|
|
87
|
+
self.information("Data sent on trigger.")
|
|
88
|
+
self.data = None
|
|
89
|
+
|
|
74
90
|
@Inputs.data
|
|
75
91
|
def set_data(self, dataset):
|
|
76
92
|
"""Accumulates incoming data, merging columns if necessary, with robust variable handling."""
|
|
77
93
|
self.error("") # Clear previous errors
|
|
94
|
+
self.information("")
|
|
78
95
|
if dataset is None:
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
self.data = None
|
|
82
|
-
self.Outputs.preview.send(None)
|
|
96
|
+
self.data = None
|
|
97
|
+
self.Outputs.sample.send(None)
|
|
83
98
|
return
|
|
84
99
|
|
|
85
|
-
# --- LOGIQUE DE FUSION DES COLONNES (CONSERVÉE) ---
|
|
86
|
-
|
|
87
100
|
if self.data is None:
|
|
88
|
-
#
|
|
101
|
+
# Première table reçue
|
|
89
102
|
self.data = dataset.copy()
|
|
90
|
-
|
|
91
103
|
else:
|
|
92
104
|
try:
|
|
93
|
-
#
|
|
105
|
+
# Fusion flexible des domaines
|
|
94
106
|
current_all_vars = self.data.domain.variables + self.data.domain.metas
|
|
95
107
|
new_all_vars = dataset.domain.variables + dataset.domain.metas
|
|
96
108
|
|
|
97
|
-
# Utiliser un dictionnaire pour ne conserver qu'une seule variable par nom
|
|
98
109
|
unique_vars = {}
|
|
99
110
|
for var in current_all_vars + new_all_vars:
|
|
100
111
|
if var.name not in unique_vars:
|
|
@@ -114,10 +125,8 @@ class OWAccumulator(widget.OWWidget):
|
|
|
114
125
|
key=lambda x: x.name)
|
|
115
126
|
all_metas = sorted([unique_vars[name] for name in all_metas_names], key=lambda x: x.name)
|
|
116
127
|
|
|
117
|
-
# 4. Créer le nouveau domaine
|
|
118
128
|
new_domain = Domain(all_vars, metas=all_metas)
|
|
119
129
|
|
|
120
|
-
# 5. Transform (expand) both tables to the new, common domain
|
|
121
130
|
data_expanded = self.data.transform(new_domain)
|
|
122
131
|
dataset_expanded = dataset.transform(new_domain)
|
|
123
132
|
|
|
@@ -127,13 +136,11 @@ class OWAccumulator(widget.OWWidget):
|
|
|
127
136
|
except Exception as e:
|
|
128
137
|
self.error(f"Data tables could not be aggregated/concatenated. Error: {e}")
|
|
129
138
|
return
|
|
130
|
-
|
|
131
|
-
self.
|
|
139
|
+
|
|
140
|
+
if self.checkBox_send and self.checkBox_send.isChecked():
|
|
141
|
+
self.Outputs.sample.send(self.data)
|
|
132
142
|
|
|
133
143
|
def post_initialized(self):
|
|
134
|
-
"""
|
|
135
|
-
Method for post-initialization tasks, aligned with OWChunker structure.
|
|
136
|
-
"""
|
|
137
144
|
pass
|
|
138
145
|
|
|
139
146
|
|
|
@@ -144,4 +151,4 @@ if __name__ == "__main__":
|
|
|
144
151
|
if hasattr(app, "exec"):
|
|
145
152
|
app.exec()
|
|
146
153
|
else:
|
|
147
|
-
app.exec_()
|
|
154
|
+
app.exec_()
|
|
@@ -92,10 +92,9 @@ def tokens_to_row(table):
|
|
|
92
92
|
for token in tokens:
|
|
93
93
|
# Duplicate the row's values
|
|
94
94
|
attrs = list(row) # attribute values
|
|
95
|
-
class_vars = list(row.get_class()) if domain.class_vars else []
|
|
96
95
|
metas = list(row.metas) + [token] # append token as a new meta
|
|
97
96
|
|
|
98
|
-
new_data_rows.append(attrs +
|
|
97
|
+
new_data_rows.append(attrs + metas)
|
|
99
98
|
|
|
100
99
|
# Build and return the new Table
|
|
101
100
|
return Table.from_list(new_domain, new_data_rows)
|
|
@@ -122,10 +121,9 @@ def tokens_to_column(table):
|
|
|
122
121
|
|
|
123
122
|
# Build row: attributes + class_vars + metas + tokens
|
|
124
123
|
attrs = list(row)
|
|
125
|
-
class_vars = list(row.get_class()) if table.domain.class_vars else []
|
|
126
124
|
metas = list(row.metas) + padded_tokens
|
|
127
125
|
|
|
128
|
-
new_data_rows.append(attrs +
|
|
126
|
+
new_data_rows.append(attrs + metas)
|
|
129
127
|
|
|
130
128
|
return Table.from_list(new_domain, new_data_rows)
|
|
131
129
|
|
|
@@ -22,12 +22,14 @@ else:
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
model_names = {
|
|
25
|
+
"Qwen3 1.7B (Q2)": "Qwen3-1.7B-Q2_K_L.gguf",
|
|
25
26
|
"Qwen3 1.7B": "Qwen3-1.7B-Q6_K.gguf",
|
|
26
27
|
"Qwen3 4B": "Qwen3-4B-Q4_K_M.gguf",
|
|
27
28
|
"Qwen3 8B": "Qwen3-8B-Q4_K_M.gguf",
|
|
28
29
|
"Qwen3 14B": "Qwen3-14B-Q4_K_M.gguf",
|
|
29
30
|
"Granite4 7B": "granite-4.0-h-tiny-Q4_K_M.gguf",
|
|
30
31
|
"Phi4 4B": "Phi-4-mini-reasoning-Q4_K_M.gguf",
|
|
32
|
+
"Gemma3 270m": "gemma-3-270m-Q8_0.gguf",
|
|
31
33
|
"Gemma3 12B": "gemma-3-12b-it-Q4_K_M.gguf",
|
|
32
34
|
"Deepseek 8B": "DeepSeek-R1-0528-Qwen3-8B-Q4_K_M.gguf"
|
|
33
35
|
}
|
|
@@ -70,11 +70,16 @@
|
|
|
70
70
|
</rect>
|
|
71
71
|
</property>
|
|
72
72
|
<property name="currentText">
|
|
73
|
-
<string>Qwen3 1.7B</string>
|
|
73
|
+
<string>Qwen3 1.7B (Q2)</string>
|
|
74
74
|
</property>
|
|
75
75
|
<property name="minimumContentsLength">
|
|
76
76
|
<number>0</number>
|
|
77
77
|
</property>
|
|
78
|
+
<item>
|
|
79
|
+
<property name="text">
|
|
80
|
+
<string>Qwen3 1.7B (Q2)</string>
|
|
81
|
+
</property>
|
|
82
|
+
</item>
|
|
78
83
|
<item>
|
|
79
84
|
<property name="text">
|
|
80
85
|
<string>Qwen3 1.7B</string>
|
|
@@ -105,6 +110,11 @@
|
|
|
105
110
|
<string>Phi4 4B</string>
|
|
106
111
|
</property>
|
|
107
112
|
</item>
|
|
113
|
+
<item>
|
|
114
|
+
<property name="text">
|
|
115
|
+
<string>Gemma3 270m</string>
|
|
116
|
+
</property>
|
|
117
|
+
</item>
|
|
108
118
|
<item>
|
|
109
119
|
<property name="text">
|
|
110
120
|
<string>Gemma3 12B</string>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
3
|
+
<svg fill="#000000" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
4
|
+
viewBox="0 0 32 32" xml:space="preserve">
|
|
5
|
+
<path id="machine--learning--03_1_" d="M29.36,15.695v-3.389c0.575-0.159,1-0.681,1-1.305c0-0.75-0.61-1.36-1.36-1.36
|
|
6
|
+
c-0.191,0-0.372,0.04-0.537,0.111l-2.365-2.956C26.261,6.572,26.36,6.298,26.36,6c0-0.75-0.61-1.36-1.36-1.36
|
|
7
|
+
c-0.401,0-0.758,0.177-1.007,0.454l-3.659-1.83C20.351,3.179,20.36,3.091,20.36,3c0-0.75-0.61-1.36-1.36-1.36
|
|
8
|
+
c-0.625,0-1.147,0.425-1.306,1h-4.389c-0.159-0.575-0.681-1-1.305-1c-0.75,0-1.36,0.61-1.36,1.36c0,0.091,0.01,0.179,0.027,0.264
|
|
9
|
+
l-2.66,1.33C7.758,4.318,7.401,4.14,7,4.14c-0.75,0-1.36,0.61-1.36,1.36c0,0.273,0.082,0.526,0.221,0.739L3.598,8.785
|
|
10
|
+
C3.417,8.695,3.216,8.64,3,8.64c-0.75,0-1.36,0.61-1.36,1.36c0,0.625,0.425,1.146,1,1.305v3.389c-0.575,0.159-1,0.681-1,1.305
|
|
11
|
+
c0,0.75,0.61,1.36,1.36,1.36c0.546,0,1.014-0.325,1.231-0.791l3.424,0.571C7.726,17.824,8.298,18.36,9,18.36
|
|
12
|
+
c0.091,0,0.179-0.01,0.264-0.027l0.83,1.659C9.818,20.242,9.64,20.599,9.64,21c0,0.75,0.61,1.36,1.36,1.36
|
|
13
|
+
c0.47,0,0.885-0.24,1.13-0.604l3.518,1.173C15.646,22.953,15.64,22.976,15.64,23c0,0.625,0.425,1.147,1,1.306v3.388
|
|
14
|
+
c-0.575,0.159-1,0.681-1,1.306c0,0.75,0.61,1.36,1.36,1.36s1.36-0.61,1.36-1.36c0-0.624-0.425-1.147-1-1.306v-3.389
|
|
15
|
+
c0.575-0.159,1-0.681,1-1.306c0-0.452-0.224-0.85-0.564-1.098l0.682-1.82l3.163,0.904c0,0.005-0.001,0.01-0.001,0.015
|
|
16
|
+
c0,0.624,0.425,1.147,1,1.306v5.389c-0.575,0.159-1,0.681-1,1.306c0,0.75,0.61,1.36,1.36,1.36s1.36-0.61,1.36-1.36
|
|
17
|
+
c0-0.624-0.425-1.147-1-1.306v-5.389c0.575-0.159,1-0.681,1-1.306c0-0.149-0.03-0.29-0.074-0.424l3.828-2.553
|
|
18
|
+
C28.353,18.231,28.66,18.36,29,18.36c0.75,0,1.36-0.61,1.36-1.36C30.36,16.376,29.935,15.854,29.36,15.695z M21.354,14.932
|
|
19
|
+
c-0.002-0.045-0.007-0.09-0.014-0.134l3.049-1.355l3.313,2.899L21.354,14.932z M20,15.64c-0.353,0-0.64-0.287-0.64-0.64
|
|
20
|
+
s0.287-0.64,0.64-0.64s0.64,0.287,0.64,0.64S20.353,15.64,20,15.64z M20,13.64c-0.75,0-1.36,0.61-1.36,1.36
|
|
21
|
+
c0,0.452,0.224,0.85,0.564,1.097l-1.166,3.11l-1.902-0.543l-1.465-5.126l5.463-3.756l0.628,0.489l3.028,2.65l-2.745,1.22
|
|
22
|
+
C20.796,13.838,20.423,13.64,20,13.64z M9.131,15.653L8.122,9.85l3.612-0.361V9.485C11.93,9.995,12.421,10.36,13,10.36
|
|
23
|
+
c0.005,0,0.009-0.001,0.014-0.001l0.823,2.879l-3.966,2.726C9.666,15.792,9.412,15.681,9.131,15.653z M13,9.64
|
|
24
|
+
c-0.353,0-0.64-0.287-0.64-0.64S12.647,8.36,13,8.36S13.64,8.647,13.64,9S13.353,9.64,13,9.64z M10.28,16.557l3.765-2.589
|
|
25
|
+
l1.275,4.463l-4.962-1.418c0-0.005,0.001-0.009,0.001-0.014C10.36,16.844,10.328,16.697,10.28,16.557z M24.129,7.036
|
|
26
|
+
C24.366,7.235,24.667,7.36,25,7.36c0.191,0,0.372-0.04,0.537-0.111l2.365,2.955C27.739,10.428,27.64,10.702,27.64,11
|
|
27
|
+
c0,0.069,0.01,0.135,0.02,0.201l-3.144,1.397l-3.295-2.883l-0.464-0.361L24.129,7.036z M28.251,15.866l-3.138-2.745l2.841-1.262
|
|
28
|
+
c0.176,0.213,0.412,0.371,0.686,0.446v3.389C28.501,15.733,28.369,15.789,28.251,15.866z M29.64,11c0,0.353-0.287,0.64-0.64,0.64
|
|
29
|
+
s-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64S29.64,10.647,29.64,11z M25,5.36c0.353,0,0.64,0.287,0.64,0.64S25.353,6.64,25,6.64
|
|
30
|
+
S24.36,6.353,24.36,6S24.647,5.36,25,5.36z M19,2.36c0.353,0,0.64,0.287,0.64,0.64S19.353,3.64,19,3.64S18.36,3.353,18.36,3
|
|
31
|
+
S18.647,2.36,19,2.36z M19,4.36c0.401,0,0.758-0.177,1.007-0.454l3.659,1.83C23.649,5.821,23.64,5.909,23.64,6
|
|
32
|
+
c0,0.156,0.032,0.303,0.08,0.443l-3.56,2.448l-6.904-5.37c0.021-0.051,0.035-0.106,0.05-0.161h4.389
|
|
33
|
+
C17.853,3.935,18.375,4.36,19,4.36z M12,2.36c0.353,0,0.64,0.287,0.64,0.64S12.353,3.64,12,3.64S11.36,3.353,11.36,3
|
|
34
|
+
S11.647,2.36,12,2.36z M10.993,3.906C11.242,4.182,11.599,4.36,12,4.36c0.304,0,0.583-0.104,0.81-0.274l6.728,5.232l-5.075,3.489
|
|
35
|
+
l-0.757-2.65C14.096,9.918,14.36,9.491,14.36,9c0-0.75-0.61-1.36-1.36-1.36c-0.673,0-1.229,0.492-1.337,1.135V8.772L7.998,9.138
|
|
36
|
+
l-0.42-2.412C8.039,6.508,8.36,6.042,8.36,5.5c0-0.091-0.01-0.179-0.027-0.264L10.993,3.906z M4.265,9.511
|
|
37
|
+
C4.231,9.423,4.19,9.339,4.139,9.261l2.263-2.546c0.143,0.071,0.3,0.115,0.467,0.132L7.28,9.21L4.265,9.511z M7,4.86
|
|
38
|
+
c0.353,0,0.64,0.287,0.64,0.64S7.353,6.14,7,6.14S6.36,5.853,6.36,5.5S6.647,4.86,7,4.86z M2.36,10c0-0.353,0.287-0.64,0.64-0.64
|
|
39
|
+
S3.64,9.647,3.64,10S3.353,10.64,3,10.64S2.36,10.353,2.36,10z M3,16.64c-0.353,0-0.64-0.287-0.64-0.64S2.647,15.36,3,15.36
|
|
40
|
+
S3.64,15.647,3.64,16C3.64,16.353,3.353,16.64,3,16.64z M7.769,16.43l-3.424-0.571c-0.059-0.561-0.455-1.018-0.986-1.165v-3.389
|
|
41
|
+
c0.503-0.139,0.888-0.556,0.977-1.077l3.067-0.307l1.018,5.853C8.135,15.91,7.904,16.142,7.769,16.43z M8.36,17
|
|
42
|
+
c0-0.353,0.287-0.64,0.64-0.64S9.64,16.647,9.64,17S9.353,17.64,9,17.64S8.36,17.353,8.36,17z M11,21.64
|
|
43
|
+
c-0.353,0-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64s0.64,0.287,0.64,0.64S11.353,21.64,11,21.64z M12.353,21.071
|
|
44
|
+
c0.001-0.024,0.007-0.047,0.007-0.071c0-0.75-0.61-1.36-1.36-1.36c-0.091,0-0.179,0.01-0.264,0.027l-0.83-1.659
|
|
45
|
+
c0.098-0.088,0.182-0.189,0.251-0.302l5.396,1.541l0.742,2.596c-0.168,0.103-0.315,0.238-0.425,0.402L12.353,21.071z M17.64,29
|
|
46
|
+
c0,0.353-0.287,0.64-0.64,0.64c-0.353,0-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64C17.353,28.36,17.64,28.647,17.64,29z M17,23.64
|
|
47
|
+
c-0.353,0-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64c0.353,0,0.64,0.287,0.64,0.64S17.353,23.64,17,23.64z M17.121,21.652
|
|
48
|
+
C17.08,21.648,17.041,21.64,17,21.64c-0.005,0-0.009,0.001-0.014,0.001l-0.618-2.162l1.416,0.404L17.121,21.652z M18.732,19.406
|
|
49
|
+
l1.147-3.059c0.041,0.004,0.08,0.012,0.121,0.012c0.519,0,0.967-0.296,1.196-0.725l6.451,1.433c0.006,0.124,0.03,0.243,0.068,0.356
|
|
50
|
+
l-3.828,2.553C23.647,19.769,23.34,19.64,23,19.64c-0.491,0-0.918,0.264-1.158,0.655L18.732,19.406z M23.64,29
|
|
51
|
+
c0,0.353-0.287,0.64-0.64,0.64s-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64S23.64,28.647,23.64,29z M23,21.64
|
|
52
|
+
c-0.353,0-0.64-0.287-0.64-0.64s0.287-0.64,0.64-0.64s0.64,0.287,0.64,0.64S23.353,21.64,23,21.64z M29,17.64
|
|
53
|
+
c-0.353,0-0.64-0.287-0.64-0.64c0-0.353,0.287-0.64,0.64-0.64s0.64,0.287,0.64,0.64C29.64,17.353,29.353,17.64,29,17.64z"/>
|
|
54
|
+
<rect id="_Transparent_Rectangle" style="fill:none;" width="32" height="32"/>
|
|
55
|
+
</svg>
|
|
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
|
|
|
4
4
|
NAME = "aait"
|
|
5
5
|
|
|
6
6
|
# Version du package PyPI
|
|
7
|
-
VERSION = "2.3.
|
|
7
|
+
VERSION = "2.3.9" # la version doit être supérieure à la précédente sinon la publication sera refusée
|
|
8
8
|
|
|
9
9
|
# Facultatif / Adaptable à souhait
|
|
10
10
|
AUTHOR = "Orange community"
|
aait-2.3.8.2/PKG-INFO
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: aait
|
|
3
|
-
Version: 2.3.8.2
|
|
4
|
-
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
-
Home-page:
|
|
6
|
-
Author: Orange community
|
|
7
|
-
Author-email:
|
|
8
|
-
Keywords: orange3 add-on
|
|
9
|
-
License-File: License.txt
|
|
10
|
-
Requires-Dist: torch
|
|
11
|
-
Requires-Dist: sentence-transformers==5.0.0
|
|
12
|
-
Requires-Dist: gpt4all[all]==2.8.2
|
|
13
|
-
Requires-Dist: sacremoses==0.1.1
|
|
14
|
-
Requires-Dist: transformers==4.51.3
|
|
15
|
-
Requires-Dist: sentencepiece==0.2.0
|
|
16
|
-
Requires-Dist: optuna
|
|
17
|
-
Requires-Dist: spacy==3.7.6
|
|
18
|
-
Requires-Dist: markdown
|
|
19
|
-
Requires-Dist: python-multipart
|
|
20
|
-
Requires-Dist: PyMuPDF==1.24.14
|
|
21
|
-
Requires-Dist: chonkie==0.4.1
|
|
22
|
-
Requires-Dist: GPUtil==1.4.0
|
|
23
|
-
Requires-Dist: unidecode==1.3.8
|
|
24
|
-
Requires-Dist: python-docx==1.1.2
|
|
25
|
-
Requires-Dist: psutil
|
|
26
|
-
Requires-Dist: thefuzz==0.22.1
|
|
27
|
-
Requires-Dist: beautifulsoup4==4.12.3
|
|
28
|
-
Requires-Dist: CATEGORIT
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: aait
|
|
3
|
-
Version: 2.3.8.2
|
|
4
|
-
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
-
Home-page:
|
|
6
|
-
Author: Orange community
|
|
7
|
-
Author-email:
|
|
8
|
-
Keywords: orange3 add-on
|
|
9
|
-
License-File: License.txt
|
|
10
|
-
Requires-Dist: torch
|
|
11
|
-
Requires-Dist: sentence-transformers==5.0.0
|
|
12
|
-
Requires-Dist: gpt4all[all]==2.8.2
|
|
13
|
-
Requires-Dist: sacremoses==0.1.1
|
|
14
|
-
Requires-Dist: transformers==4.51.3
|
|
15
|
-
Requires-Dist: sentencepiece==0.2.0
|
|
16
|
-
Requires-Dist: optuna
|
|
17
|
-
Requires-Dist: spacy==3.7.6
|
|
18
|
-
Requires-Dist: markdown
|
|
19
|
-
Requires-Dist: python-multipart
|
|
20
|
-
Requires-Dist: PyMuPDF==1.24.14
|
|
21
|
-
Requires-Dist: chonkie==0.4.1
|
|
22
|
-
Requires-Dist: GPUtil==1.4.0
|
|
23
|
-
Requires-Dist: unidecode==1.3.8
|
|
24
|
-
Requires-Dist: python-docx==1.1.2
|
|
25
|
-
Requires-Dist: psutil
|
|
26
|
-
Requires-Dist: thefuzz==0.22.1
|
|
27
|
-
Requires-Dist: beautifulsoup4==4.12.3
|
|
28
|
-
Requires-Dist: CATEGORIT
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
2
|
-
from peft import PeftModel
|
|
3
|
-
import torch
|
|
4
|
-
|
|
5
|
-
# Check GPU usage
|
|
6
|
-
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
|
|
7
|
-
print(f"Using device: {device}")
|
|
8
|
-
|
|
9
|
-
# Paths
|
|
10
|
-
base_model_path = r"C:\Users\lucas\aait_store\Models\NLP\Chocolatine-3B-Instruct"
|
|
11
|
-
lora_adapter_path = r"C:\Users\lucas\AppData\Local\Programs\Orange_dev\Lib\results\checkpoint-15525"
|
|
12
|
-
merged_model_output_path = r"C:\Users\lucas\merged_model"
|
|
13
|
-
|
|
14
|
-
# Clean the output directory (if needed)
|
|
15
|
-
import shutil, os
|
|
16
|
-
if os.path.exists(merged_model_output_path):
|
|
17
|
-
shutil.rmtree(merged_model_output_path)
|
|
18
|
-
os.makedirs(merged_model_output_path, exist_ok=True)
|
|
19
|
-
|
|
20
|
-
# Load the base model
|
|
21
|
-
base_model = AutoModelForCausalLM.from_pretrained(base_model_path, torch_dtype=torch.float16)
|
|
22
|
-
|
|
23
|
-
# Load the LoRA adapter
|
|
24
|
-
lora_model = PeftModel.from_pretrained(base_model, lora_adapter_path)
|
|
25
|
-
|
|
26
|
-
# Merge LoRA weights into the base model
|
|
27
|
-
lora_model.merge_and_unload()
|
|
28
|
-
|
|
29
|
-
# Save only the merged base model
|
|
30
|
-
base_model.save_pretrained(merged_model_output_path)
|
|
31
|
-
|
|
32
|
-
# Save the tokenizer
|
|
33
|
-
tokenizer = AutoTokenizer.from_pretrained(base_model_path)
|
|
34
|
-
tokenizer.save_pretrained(merged_model_output_path)
|
|
35
|
-
|
|
36
|
-
print(f"Merged model saved to {merged_model_output_path}")
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
# # Test function to evaluate before and after fine-tuning
|
|
46
|
-
# def test_model(model, tokenizer, test_queries):
|
|
47
|
-
# model.eval() # Set the model to evaluation mode
|
|
48
|
-
# for query in test_queries:
|
|
49
|
-
# prompt = f"### User: {query}\n\n### Assistant:"
|
|
50
|
-
#
|
|
51
|
-
# # Move input_ids to the appropriate device
|
|
52
|
-
# input_ids = tokenizer(prompt, return_tensors="pt").input_ids.to(device)
|
|
53
|
-
#
|
|
54
|
-
# # Generate output on the GPU
|
|
55
|
-
# output = model.generate(input_ids, max_length=400, temperature=0, top_p=0)
|
|
56
|
-
#
|
|
57
|
-
# # Decode the response
|
|
58
|
-
# response = tokenizer.decode(output[0], skip_special_tokens=True)
|
|
59
|
-
# response = response.replace(prompt, "")
|
|
60
|
-
#
|
|
61
|
-
# print(f"Query: {query}")
|
|
62
|
-
# print(f"Response: {response}\n")
|
|
63
|
-
# print("#############")
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
# # Move the model to GPU
|
|
67
|
-
# base_model.to(device)
|
|
68
|
-
#
|
|
69
|
-
# # Test model before fine-tuning
|
|
70
|
-
# print("Testing model before fine-tuning:")
|
|
71
|
-
# test_queries = [
|
|
72
|
-
# "Pour l'hélicoptère FAMA K209M, quelles sont les vitesses recommandées pour : le décollage, l'autorotation, et la vitesse d'approche ?",
|
|
73
|
-
# "Pour l'hélicoptère FAMA K209M, quelles sont les étapes de l'autorotation avec remise de puissance ?",
|
|
74
|
-
# "Pour l'hélicoptère FAMA K209M, quelles sont les étapes pour le remplacement du filtre à huile de turbine ?",
|
|
75
|
-
# "Pour l'hélicoptère FAMA K209M, quelles sont les mesures à prendre en cas d'incendie ?",
|
|
76
|
-
# "Quelle est la référence de l'huile moteur de l'hélicoptère FAMA K209M ?"
|
|
77
|
-
# ]
|
|
78
|
-
# test_model(base_model, tokenizer, test_queries)
|
|
79
|
-
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import subprocess
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
workflow_key = "Acuity_RAG"
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
# Step 1: Start the workflow
|
|
8
|
-
start_command = [
|
|
9
|
-
"curl",
|
|
10
|
-
"-X", "GET",
|
|
11
|
-
f"http://localhost:8000/kill-process/{workflow_key}",
|
|
12
|
-
"-H", "accept: application/json"
|
|
13
|
-
]
|
|
14
|
-
|
|
15
|
-
start_result = subprocess.run(start_command, capture_output=True, text=True)
|
|
16
|
-
print("Start Workflow - Status Code:", start_result.returncode)
|
|
17
|
-
print("Start Workflow - Output:", start_result.stdout)
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import subprocess
|
|
2
|
-
import json
|
|
3
|
-
import time
|
|
4
|
-
|
|
5
|
-
# Step 1: Start workflow (once --> other script)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# Step 2: Send input data
|
|
9
|
-
question = "Qu'est-ce qu'un millésime ?"
|
|
10
|
-
workflow_id = "Acuity.ows"
|
|
11
|
-
input_id = "chatbotInput1"
|
|
12
|
-
|
|
13
|
-
payload = {
|
|
14
|
-
"workflow_id": workflow_id,
|
|
15
|
-
"data": [
|
|
16
|
-
{
|
|
17
|
-
"num_input": input_id,
|
|
18
|
-
"values": [
|
|
19
|
-
["content"],
|
|
20
|
-
["str"],
|
|
21
|
-
[[question]]
|
|
22
|
-
]
|
|
23
|
-
}
|
|
24
|
-
]
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
json_data = json.dumps(payload)
|
|
28
|
-
escaped_json = json_data.replace('"', '\\"') # Escape quotes for shell
|
|
29
|
-
|
|
30
|
-
input_command = f"""curl --location "http://127.0.0.1:8000/input-workflow" \
|
|
31
|
-
--header "Content-Type: application/json" \
|
|
32
|
-
--data "{escaped_json}" """
|
|
33
|
-
|
|
34
|
-
input_result = subprocess.run(input_command, shell=True, capture_output=True, text=True)
|
|
35
|
-
print("\nSend Input - STDOUT:\n", input_result.stdout)
|
|
36
|
-
print("Send Input - STDERR:\n", input_result.stderr)
|
|
37
|
-
print("Send Input - Return Code:", input_result.returncode)
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
# Step 3: Poke the workflow to get the progress / results
|
|
44
|
-
print("\nWaiting for workflow to complete...")
|
|
45
|
-
output_command = ["curl", "--location", "http://127.0.0.1:8000/output-workflow"]
|
|
46
|
-
timeout = 30
|
|
47
|
-
k = 0
|
|
48
|
-
while k < 30:
|
|
49
|
-
output_result = subprocess.run(output_command, capture_output=True)
|
|
50
|
-
stdout_utf8 = output_result.stdout.decode("utf-8")
|
|
51
|
-
parsed_response = json.loads(stdout_utf8)
|
|
52
|
-
if parsed_response["_result"] is None:
|
|
53
|
-
print("Progress:", parsed_response["_statut"])
|
|
54
|
-
else:
|
|
55
|
-
break
|
|
56
|
-
time.sleep(1)
|
|
57
|
-
k += 1
|
|
58
|
-
print("\nRaw Output:\n", stdout_utf8, " - Type:", type(stdout_utf8))
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
# Step 4: Parse and get the results
|
|
65
|
-
try:
|
|
66
|
-
parsed_response = json.loads(stdout_utf8)
|
|
67
|
-
print("\nParsed Response:\n", parsed_response, " - Type:", type(parsed_response))
|
|
68
|
-
answer = parsed_response["_result"][0]["content"]
|
|
69
|
-
print("\nAnswer:", answer)
|
|
70
|
-
except json.JSONDecodeError as e:
|
|
71
|
-
print("Failed to parse JSON:", e)
|
|
72
|
-
except (KeyError, IndexError) as e:
|
|
73
|
-
print("Unexpected response structure:", e)
|