You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

131 lines
9.6KB

  1. namespace ToolsServices
  2. {
  3. public static class FichiersInternesService
  4. {
  5. #region Variables privées
  6. private static string _DossierParametres = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Parametres");
  7. private static string _DossierVectors = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Vectors");
  8. private static string _DossierListesItems = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ListesItems");
  9. private static string _DossierPrompts = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Prompts");
  10. #endregion
  11. #region Variables publiques
  12. public static string DossierLogs = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Logs");
  13. public static string ParamsLicence { get; } = Path.Combine(_DossierParametres, "params.txt");
  14. public static string ParamsFaceRecognition = Path.Combine(_DossierParametres, "paramsFaceRecognition.txt");
  15. public static string ParamsLancerCheckMails{ get; } = Path.Combine(_DossierParametres, "paramsLancerCheckMails.txt");
  16. public static string ParamsGenerationCV { get; } = Path.Combine(_DossierParametres, "paramsGenerationCV.txt");
  17. public static string ParamsRechercheCV { get; } = Path.Combine(_DossierParametres, "paramsRechercheCV.txt");
  18. public static string ParamsFactures { get; } = Path.Combine(_DossierParametres, "paramsFactures.txt");
  19. public static string ParamsTF_From_DSF { get; } = Path.Combine(_DossierParametres, "paramsTF_From_DSF.txt");
  20. public static string ParamsMail { get; } = Path.Combine(_DossierParametres, "paramsMail.txt");
  21. public static string ParamsOllama { get; } = Path.Combine(_DossierParametres, "paramsOllama.txt");
  22. public static string ParamsQdrant { get; } = Path.Combine(_DossierParametres, "paramsQdrant.txt");
  23. public static string ParamsModeles { get; } = Path.Combine(_DossierParametres, "models.config.json");
  24. public static string ParamsApiExterne { get; } = Path.Combine(_DossierParametres, "paramsApiExterne.txt");
  25. public static string ParamsRAG { get; } = Path.Combine(_DossierParametres, "paramsRAG.txt");
  26. public static string ParamsGenerateImg { get; } = Path.Combine(_DossierParametres, "paramsGenerateImg.txt");
  27. public static string ParamsFooocus { get; } = Path.Combine(_DossierParametres, "paramsFooocus.txt");
  28. public static string ParamsLogs { get; } = Path.Combine(_DossierParametres, "paramsLogs.txt");
  29. public static string ParamsWhisper { get; } = Path.Combine(_DossierParametres, "paramsWhisper.txt");
  30. public static string EmailsSensibiliteTon { get; } = Path.Combine(_DossierParametres, "EmailsSensibiliteTon.txt");
  31. public static string EmailsSensibilitePosture { get; } = Path.Combine(_DossierParametres, "EmailsSensibilitePosture.txt");
  32. public static string EmailsSensibiliteCouleur { get; } = Path.Combine(_DossierParametres, "EmailsSensibiliteCouleur.txt");
  33. public static string EmailsSensibiliteNiveauDetail { get; } = Path.Combine(_DossierParametres, "EmailsSensibiliteNiveauDetail.txt");
  34. public static string VectorsCV { get; } = Path.Combine(_DossierVectors, "vectorsCV.json");
  35. public static string VectorsDocsRAG { get; } = Path.Combine(_DossierVectors, "vectorsDocsRAG.json");
  36. public static string VectorsDocsCHAT { get; } = Path.Combine(_DossierVectors, "vectorsDocsCHAT.json");
  37. public static string VectorsMails { get; } = Path.Combine(_DossierVectors, "vectorsMails.json");
  38. public static string ListeMails { get; } = Path.Combine(_DossierListesItems, "listeMails.json");
  39. public static string ListeMailsSend { get; } = Path.Combine(_DossierListesItems, "listeMailsSend.json");
  40. public static string ListeRechercheCV { get; } = Path.Combine(_DossierListesItems, "listeRechercheCV.json");
  41. #endregion
  42. #region Classe interne pour les fichiers de prompts
  43. public static class PromptFiles
  44. {
  45. public static string ReActAgent_PromptSystem_LLM_Coder { get; } = Path.Combine(_DossierPrompts, "ReActAgent.PromptSystem_LLM_Coder.txt");
  46. public static string ReActAgent_GenerateImage { get; } = Path.Combine(_DossierPrompts, "ReActAgent.GenerateImage.txt");
  47. public static string ReActAgent_GenerateImageV2 { get; } = Path.Combine(_DossierPrompts, "ReActAgent.GenerateImageV2.txt");
  48. public static string ReActAgent_RechercheRAG { get; } = Path.Combine(_DossierPrompts, "ReActAgent.RechercheRAG.txt");
  49. public static string ReActAgent_SummarizeDoc { get; } = Path.Combine(_DossierPrompts, "ReActAgent.SummarizeAsyncDoc.txt");
  50. public static string ReActAgent_SummarizeIntegralLongDoc { get; } = Path.Combine(_DossierPrompts, "ReActAgent.SummarizeIntegralLongDoc.txt");
  51. public static string ReActAgent_SummarizeIntegralLongDoc_Final { get; } = Path.Combine(_DossierPrompts, "ReActAgent.SummarizeIntegralLongDoc_Final.txt");
  52. public static string GenererCVService_GenerateOneCV_Extract { get; } = Path.Combine(_DossierPrompts, "GenererCVService.GenerateOneCV_Extract.txt");
  53. public static string GenererCVService_GenerateOneCV_Format { get; } = Path.Combine(_DossierPrompts, "GenererCVService.GenerateOneCV_Format.txt");
  54. public static string RechercheCVService_RechercheCV_Analyse { get; } = Path.Combine(_DossierPrompts, "RechercheCVService.RechercheCV_Analyse.txt");
  55. public static string RechercheCVService_RechercheCV_Generate { get; } = Path.Combine(_DossierPrompts, "RechercheCVService.RechercheCV_Generate.txt");
  56. public static string EmailService_Generer_Mail { get; } = Path.Combine(_DossierPrompts, "EmailService.Generer_Mail.txt");
  57. public static string EmailService_AnalyserMail_Resume { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Resume.txt");
  58. public static string EmailService_AnalyserMail_Resume_PJ { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Resume_PJ.txt");
  59. public static string EmailService_AnalyserMail_Categorie { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Categorie.txt");
  60. public static string EmailService_AnalyserMail_Strategie { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Strategie.txt");
  61. public static string EmailService_AnalyserMail_Reponse { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Reponse.txt");
  62. public static string EmailService_AnalyserMail_Reponse_PJ { get; } = Path.Combine(_DossierPrompts, "EmailService.AnalyserMail_Reponse_PJ.txt");
  63. public static string EmailSendService_AnalyserMail_BesoinReponse { get; } = Path.Combine(_DossierPrompts, "EmailSendService.AnalyserMail_BesoinReponse.txt");
  64. public static string EmailSendService_AnalyserMail_AllPointsChecked { get; } = Path.Combine(_DossierPrompts, "EmailSendService.AnalyserMail_AllPointsChecked.txt");
  65. public static string EmailSendService_AnalyserMail_Relance { get; } = Path.Combine(_DossierPrompts, "EmailSendService.AnalyserMail_Relance.txt");
  66. public static string TF_From_DSFService_GenereTF { get; } = Path.Combine(_DossierPrompts, "TF_From_DSFService.GenereTF.txt");
  67. public static string FactureService_AnalyserFacture_Extract { get; } = Path.Combine(_DossierPrompts, "FactureService.AnalyserFacture_Extract.txt");
  68. public static string OllamaService_PromptSystem { get; } = Path.Combine(_DossierPrompts, "OllamaService.PromptSystem.txt");
  69. public static string TranscriptionAndResumeService_Resume { get; } = Path.Combine(_DossierPrompts, "TranscriptionAndResumeService.Resume.txt");
  70. }
  71. #endregion
  72. #region Méthodes publiques
  73. public static void VerifPath()
  74. {
  75. try
  76. {
  77. if (!Directory.Exists(_DossierParametres))
  78. {
  79. LoggerService.LogDebug($"FichiersInternesService.VerifPath. Tentative de créé : {_DossierParametres}");
  80. Directory.CreateDirectory(_DossierParametres);
  81. LoggerService.LogInfo($"FichiersInternesService.VerifPath. répertoire créé : {_DossierParametres}");
  82. }
  83. if (!Directory.Exists(_DossierVectors))
  84. {
  85. LoggerService.LogDebug($"FichiersInternesService.VerifPath. Tentative de créé : {_DossierVectors}");
  86. Directory.CreateDirectory(_DossierVectors);
  87. LoggerService.LogInfo($"FichiersInternesService.VerifPath. répertoire créé : {_DossierVectors}");
  88. }
  89. if (!Directory.Exists(_DossierListesItems))
  90. {
  91. LoggerService.LogDebug($"FichiersInternesService.VerifPath. Tentative de créé : {_DossierListesItems}");
  92. Directory.CreateDirectory(_DossierListesItems);
  93. LoggerService.LogInfo($"FichiersInternesService.VerifPath. répertoire créé : {_DossierListesItems}");
  94. }
  95. if (!Directory.Exists(_DossierPrompts))
  96. {
  97. LoggerService.LogDebug($"FichiersInternesService.VerifPath. Tentative de créé : {_DossierPrompts}");
  98. Directory.CreateDirectory(_DossierPrompts);
  99. LoggerService.LogInfo($"FichiersInternesService.VerifPath. répertoire créé : {_DossierPrompts}");
  100. }
  101. }
  102. catch (Exception ex)
  103. {
  104. LoggerService.LogError($"FichiersInternesService.VerifPath : {ex.Message}");
  105. }
  106. }
  107. #endregion
  108. }
  109. }