1
+ {{ define "main" -}}
2
+ < script src ="{{ "js /marked.min.js" | relURL }}"> </ script >
3
+ < section class ="row td-search-result ">
4
+ < div class ="col-12 col-md-8 offset-md-2 ">
5
+ < h2 class ="ms-4 "> {{ .Title }}</ h2 >
6
+
7
+ </ div >
8
+ < div class ="col-12 col-md-8 offset-md-2 ">
9
+ < script >
10
+ ( function ( ) {
11
+ const queryText = new URLSearchParams ( window . location . search ) . get ( 'q' )
12
+ const url = "https://discoveryengine.googleapis.com/v1alpha/projects/191169864763/locations/global/collections/default_collection/engines/interlisp-search_1741738278473/servingConfigs/default_search:searchLite?key=AIzaSyA_bFZHph5ZXN8EtXTRaQa2zi6Sh70e_zU" ;
13
+ const data = {
14
+ query : `${ queryText } ` ,
15
+ pageSize : 20 ,
16
+ session : "projects/191169864763/locations/global/collections/default_collection/engines/interlisp-search_1741738278473/sessions/-" ,
17
+ spellCorrectionSpec : {
18
+ mode : "AUTO"
19
+ } ,
20
+ languageCode : "en-US" ,
21
+ contentSearchSpec : {
22
+ snippetSpec : {
23
+ returnSnippet : true
24
+ }
25
+ }
26
+ } ;
27
+ fetch ( url , {
28
+ method : "POST" ,
29
+ headers : {
30
+ "Content-Type" : "application/json"
31
+ } ,
32
+ body : JSON . stringify ( data )
33
+ } )
34
+ . then ( response => response . json ( ) )
35
+ . then ( data => {
36
+ console . log ( "debug info fetch 66" , data ) ;
37
+ const resultDiv2 = document . createElement ( 'div' ) ;
38
+ resultDiv2 . innerHTML = marked . parse ( data . answer . answerText ) ; // Use a Markdown parser like "marked" to render Markdown as HTML
39
+ document . querySelector ( '.col-12.col-md-8.offset-md-2' ) . appendChild ( resultDiv2 ) ;
40
+ } )
41
+ /*
42
+ This method requires Oauth2 authentication and a valid bearer token.
43
+ const url = "https://discoveryengine.googleapis.com/v1alpha/projects/191169864763/locations/global/collections/default_collection/engines/interlisp-search_1741738278473/servingConfigs/default_search:search";
44
+ const bearer = "ya29.a0AZYkNZjwU1i01Y9FG5PK1G-3W9OlUGIpbqN87t35wfNBwNRILQIsXdxT34ABzJDpaWsnhsUiImHR5smDsxxgdYcX0x6e07KjoqDic0XVhzE6_dflLQ0p84-_BKYA2latAOTGhDvVHYKGY_sa5taCIEndv6yGIcHwOKX977TiZQyzfL4aCgYKAZcSARESFQHGX2MitMARmJuZ1CbwkvQbfN151w0182";
45
+ const data = {
46
+ query: `${queryText}`,
47
+ pageSize: 10,
48
+ session: "projects/191169864763/locations/global/collections/default_collection/engines/interlisp-search_1741738278473/sessions/-",
49
+ spellCorrectionSpec: {
50
+ mode: "AUTO"
51
+ },
52
+ languageCode: "en-US",
53
+ contentSearchSpec: {
54
+ snippetSpec: {
55
+ returnSnippet: true
56
+ }
57
+ }
58
+ };
59
+
60
+ fetch(url, {
61
+ method: "POST",
62
+ headers: {
63
+ "Content-Type": "application/json",
64
+ "Authorization": `Bearer ${bearer}`
65
+ },
66
+ body: JSON.stringify(data)
67
+ })
68
+ .then(response => response.json())
69
+ .then(data => {
70
+ console.log("debug info fetch 28", data);
71
+ const resultDiv = document.createElement('div');
72
+ // resultDiv.textContent = JSON.stringify(data, null, 2);
73
+ // document.querySelector('.col-12.col-md-8.offset-md-2').appendChild(resultDiv);
74
+ const resultsCall1 = data; // Define resultsCall1 here
75
+ const url2 = "https://discoveryengine.googleapis.com/v1alpha/projects/191169864763/locations/global/collections/default_collection/engines/interlisp-search_1741738278473/servingConfigs/default_search:answer";
76
+ const data2 = {
77
+ query : {
78
+ text: `${queryText}`,
79
+ queryId: `${resultsCall1.sessionInfo.queryId}` // Fix typo here
80
+ },
81
+ session: `${resultsCall1.sessionInfo.name}`,
82
+ relatedQuestionsSpec: {
83
+ enable: true
84
+ },
85
+ answerGenerationSpec: {
86
+ ignoreAdversarialQuery: false,
87
+ ignoreNonAnswerSeekingQuery: false,
88
+ ignoreLowRelevantContent: true,
89
+ multimodalSpec: {},
90
+ includeCitations: true,
91
+ promptSpec: {
92
+ preamble: "You are a researcher with experience in computer science and the evolution of programming languages. Answers should be targeted for like-minded individuals. Technical details are good, especially when they are appropriately attributed."
93
+ },
94
+ modelSpec: {
95
+ modelVersion: "stable"
96
+ }
97
+ }
98
+ };
99
+ console.log("debug POST 2 body: ", data2);
100
+ fetch(url2, {
101
+ method: "POST",
102
+ headers: {
103
+ "Content-Type": "application/json",
104
+ "Authorization": `Bearer ${bearer}`
105
+ },
106
+ body: JSON.stringify(data2)
107
+ })
108
+ .then(response => response.json())
109
+ .then(data => {
110
+ console.log("debug info fetch 66", data);
111
+ const resultDiv2 = document.createElement('div');
112
+ resultDiv2.innerHTML = marked.parse(data.answer.answerText); // Use a Markdown parser like "marked" to render Markdown as HTML
113
+ document.querySelector('.col-12.col-md-8.offset-md-2').appendChild(resultDiv2);
114
+ })
115
+ }) */
116
+ . catch ( error => {
117
+ console . error ( "Failed to fetch remote resource:" , error ) ;
118
+ } ) ;
119
+ } ) ( ) ;
120
+ </ script >
121
+ <!--
122
+ if (!window["WIZ_gab_global_data"]) {
123
+ window["WIZ_gab_global_data"] = {
124
+ 'zkAi6d': 'https://cloud.google.com/ai/gen-app-builder/_/UcsWidgetUi',
125
+ 'axVgKc': 'https:/www.gstatic.com/_/mss/boq-cloud-ai-ucs/_/js/k\x3dboq-cloud-ai-ucs.UcsWidgetUi.en_US.DX1lMoJFvVY.2021.O\/am\x3dgAE\/d\x3d1\/rs\x3dAAj4NmxHBlw81Ca5Zbk284DAgJJnyhv-3g\/m\x3dbootstrap_module,ucs_widget_module',
126
+ 'CD1P0b': "Cv8HEg8I\/PLhFRgAOgZSVXl2UGQSDgi\/kuMVGAA6BWY2STNrEg8IqNviFRgBOgZGZ0VqZmYSDwjT6uIVGAE6BmhlUHJqYhIPCND74hUYAToGVU40STBlEg4Ikb3jFRgBOgVTRGJCVhIOCKDF4xUYADoFb2RGSVESDgia6+MVGAE6BWJSSVZEEg8ImfLjFRgAOgZqSW1UcWMSDwjl8eEVGAA6BmJ3a0NnYxIPCKX24xUYAToGVHZZclpjEg8I88ziFRgBOgZnQlNldmUSDgiDr+MVGAE6BWtkWG10Eg4Iz7XjFRgBOgVQNE9TQhIPCKb24xUYAToGa1U3a3dmEg8IzpfjFRgAOgZmS2xCY2MSDwj4+OMVGAA6Bm5CRnM5YxIPCJ+o4xUYAToGcEg1c0FlEg8IyfvjFRgAOgZRQ2FpYWQSDwitheQVGAA6BlNLeUpPZRIPCJSp4xUYAToGb1VKYjhiEg8IqP3jFRgAOgZuczEyeGISDgiO5+IVGAE6BVcwbEFqEg8IyZviFRgBOgZIMnNrNGISDgjW6eIVGAA6BUREMTlqEg8IvpLjFRgBOgZzRzJNVWQSDwj97eMVGAE6Blk3dmVGZRIPCPSy4xUYADoGeDQ3Q0xlEg4I\/ZvjFRgBOgVjT2Y4cRIPCJeN4xUYADoGbEh6TGplEg8IgonjFRgBOgZQdjZkRWQSDgj7weMVGAE6BUZnQlc2Eg8IpfziFRgBOgZ1ZXNjS2ISDgjnuOMVGAE6BWxmbE1vEg8IlN7jFRgAOgZwTmRjTmQSDwiqpeMVGAE6BmNMdFBOYhIPCJKc4xUYAToGR25oVXZjEg8IwYfkFRgAOgZIUDRnYmQSDwjHoeIVGAE6BlpMajBnZhIOCJe+4hUYAToFeWRKNWYSDwiTnOIVGAA6BmZtVURWZRIPCIrc4xUYAToGWGxTQkViEg8I5\/PiFRgAOgZNUzFmemMSDwim8+AVGAE6BnI2RW44YxIPCMr34xUYADoGU1VXbVNiEg8Ist3jFRgAOgZ0bnZhemMSDwjI7+IVGAE6BmEwOWtkZRIPCISL5BUYADoGSVY2dmliEg8IuNHiFRgBOgZOTmUxZGQSDwiWsOIVGAE6BmZpWHJYZBIOCIvf4xUYAToFdTRVdjASDwj7kuIVGAE6Bm9SMmVxZhIPCJjU4hUYAToGemFLWmZkEg8I2vbjFRgAOgZUdDNzQWUSDwi\/wuMVGAA6BnhiUFZJYxIPCMGt4xUYADoGa2E5QkhjEg8IreDiFRgBOgZldzZlNWISDwjRq+IVGAE6BmVxSTd5ZBIPCPTM4hUYADoGelh2ZmdiEg8IyaLiFRgBOgZHT0RDeWYaDggDEgodD7XduSkWnK0Q",
127
+ };
128
+ const s = document.createElement("script");
129
+ s.src = "https:\/\/www.gstatic.com\/_\/mss\/boq-cloud-ai-ucs\/_\/js\/k\x3dboq-cloud-ai-ucs.UcsWidgetUi.en_US.DX1lMoJFvVY.2021.O\/am\x3dgAE\/d\x3d1\/rs\x3dAAj4NmxHBlw81Ca5Zbk284DAgJJnyhv-3g\/m\x3dbootstrap_module,ucs_widget_module";
130
+ s.async = true;
131
+ s.crossorigin = "anonymous";
132
+ document.head.appendChild(s);}
133
+
134
+ -->
135
+ <!--
136
+ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
137
+ -H "Content-Type: application/json" \
138
+ "https://discoveryengine.googleapis.com/v1alpha/projects/85874458559/locations/global/collections/default_collection/engines/interlisp-search_1738386288647/servingConfigs/default_search:search" \
139
+ -d '{"query":"<QUERY>","pageSize":10,"spellCorrectionSpec":{"mode":"AUTO"},"contentSearchSpec":{"snippetSpec":{"returnSnippet":true}}}'
140
+ -->
141
+
142
+ {{ with .Site.Params.gcs_engine_id -}}
143
+ < script >
144
+ ( function ( ) {
145
+ var cx = '{{ . }}' ;
146
+ var gcse = document . createElement ( 'script' ) ;
147
+ gcse . type = 'text/javascript' ;
148
+ gcse . async = true ;
149
+ gcse . src = 'https://cse.google.com/cse.js?cx=' + cx ;
150
+ var s = document . getElementsByTagName ( 'script' ) [ 0 ] ;
151
+ s . parentNode . insertBefore ( gcse , s ) ;
152
+ } ) ( ) ;
153
+ </ script >
154
+ {{ end -}}
155
+
156
+ < gcse:searchresults-only > </ gcse:searchresults-only >
157
+ <!-- End Google Custom Search Engine-->
158
+ </ div >
159
+ </ section >
160
+ {{ end }}
0 commit comments