From be4be8911a94719305fbdd18c1f9164032a1a238 Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Fri, 8 Nov 2024 10:54:05 -0500 Subject: [PATCH 1/3] Support versioned snippets --- .../PromptGenerators/RelatedDocumentation.wl | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/Source/Chatbook/PromptGenerators/RelatedDocumentation.wl b/Source/Chatbook/PromptGenerators/RelatedDocumentation.wl index d0ff4d56..e57073ac 100644 --- a/Source/Chatbook/PromptGenerators/RelatedDocumentation.wl +++ b/Source/Chatbook/PromptGenerators/RelatedDocumentation.wl @@ -10,9 +10,17 @@ Needs[ "Wolfram`Chatbook`PromptGenerators`Common`" ]; (* ::**************************************************************************************************************:: *) (* ::Section::Closed:: *) (*Configuration*) -$documentationSnippetBaseURL = "https://www.wolframcloud.com/obj/wolframai-content/DocumentationSnippets/Text"; +$snippetType = "Text"; +$documentationSnippetVersion = "14-1-0-10549042"; +$baseURL = "https://www.wolframcloud.com/obj/wolframai-content/DocumentationSnippets"; +$documentationSnippetBaseURL = URLBuild @ { $baseURL, $documentationSnippetVersion, $snippetType }; +$resourceSnippetBaseURL = URLBuild @ { $baseURL, "Resources", $snippetType }; -$snippetsCacheDirectory := $snippetsCacheDirectory = ChatbookFilesDirectory[ "DocumentationSnippets" ]; +$documentationSnippetsCacheDirectory := $documentationSnippetsCacheDirectory = + ChatbookFilesDirectory @ { "DocumentationSnippets", "Documentation", $documentationSnippetVersion }; + +$resourceSnippetsCacheDirectory := $resourceSnippetsCacheDirectory = + ChatbookFilesDirectory @ { "DocumentationSnippets", "ResourceSystem" }; (* ::**************************************************************************************************************:: *) (* ::Section::Closed:: *) @@ -385,7 +393,7 @@ snippetCacheFile[ uri_String ] /; StringStartsQ[ uri, "https://resources.wolfram snippetCacheFile[ uri_String, path0_String, name_String ] := Enclose[ Module[ { path, file }, path = ConfirmBy[ StringTrim[ path0, "/" ] <> ".wxf", StringQ, "Path" ]; - file = ConfirmBy[ FileNameJoin @ { $snippetsCacheDirectory, name, path }, StringQ, "File" ]; + file = ConfirmBy[ FileNameJoin @ { snippetCacheDirectory @ name, path }, StringQ, "File" ]; snippetCacheFile[ uri ] = file ], throwInternalFailure @@ -393,6 +401,14 @@ snippetCacheFile[ uri_String, path0_String, name_String ] := Enclose[ snippetCacheFile // endDefinition; +(* ::**************************************************************************************************************:: *) +(* ::Subsubsection::Closed:: *) +(*snippetCacheDirectory*) +snippetCacheDirectory // beginDefinition; +snippetCacheDirectory[ "Documentation" ] := $documentationSnippetsCacheDirectory; +snippetCacheDirectory[ "ResourceSystem" ] := $resourceSnippetsCacheDirectory; +snippetCacheDirectory // endDefinition; + (* ::**************************************************************************************************************:: *) (* ::Subsection::Closed:: *) (*fetchDocumentationSnippets*) @@ -464,7 +480,7 @@ toDocSnippetURL // endDefinition; toDocSnippetURL0 // beginDefinition; toDocSnippetURL0[ { "resources.wolframcloud.com", { "", repo_String, "resources", name_String } } ] := - URLBuild @ { $documentationSnippetBaseURL, "Resources", repo, name <> ".wxf" }; + URLBuild @ { $resourceSnippetBaseURL, repo, name <> ".wxf" }; toDocSnippetURL0 // endDefinition; From 5583ab8d7d318d8475c68c948957fa40771b6adf Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Fri, 8 Nov 2024 13:20:15 -0500 Subject: [PATCH 2/3] Bump vector DB version --- Source/Chatbook/PromptGenerators/VectorDatabases.wl | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Source/Chatbook/PromptGenerators/VectorDatabases.wl b/Source/Chatbook/PromptGenerators/VectorDatabases.wl index 52ee1496..32a440d1 100644 --- a/Source/Chatbook/PromptGenerators/VectorDatabases.wl +++ b/Source/Chatbook/PromptGenerators/VectorDatabases.wl @@ -16,7 +16,7 @@ HoldComplete[ (* ::Section::Closed:: *) (*Configuration*) $vectorDBNames = { "DocumentationURIs", "WolframAlphaQueries" }; -$dbVersion = "1.1.0"; +$dbVersion = "1.2.0"; $allowDownload = True; $cacheEmbeddings = True; @@ -54,8 +54,6 @@ $vectorDBDownloadURLs = AssociationMap[ $pacletVectorDBDirectory := FileNameJoin @ { $thisPaclet[ "Location" ], "Assets/VectorDatabases" }; $localVectorDBDirectory := ChatbookFilesDirectory @ { "VectorDatabases", $dbVersion }; -(* TODO: need versioned URLs and paths *) - (* ::**************************************************************************************************************:: *) (* ::Subsection::Closed:: *) (*Argument Patterns*) From c119b7d29c854b3f0025f8fe27931e1c440228b2 Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Fri, 8 Nov 2024 13:54:12 -0500 Subject: [PATCH 3/3] Reduce expected count in test since some WFR entries now occupy some result space --- Tests/RelatedDocumentation.wlt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tests/RelatedDocumentation.wlt b/Tests/RelatedDocumentation.wlt index 79179916..2ade3ca0 100644 --- a/Tests/RelatedDocumentation.wlt +++ b/Tests/RelatedDocumentation.wlt @@ -128,7 +128,7 @@ VerificationTest[ VerificationTest[ StringCount[ prompt, { "paclet:ref/Prime#", "paclet:ref/NextPrime#" } ], - _Integer? (GreaterEqualThan[ 8 ]), + _Integer? (GreaterEqualThan[ 5 ]), SameTest -> MatchQ, TestID -> "RelatedDocumentation-Prompt-Messages-Count@@Tests/RelatedDocumentation.wlt:129,1-134,2" ]