@graphext/cuery 0.4.0 → 0.5.1

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.
Files changed (203) hide show
  1. package/esm/browser.d.ts +1 -1
  2. package/esm/browser.d.ts.map +1 -1
  3. package/esm/browser.js +1 -1
  4. package/esm/mod.d.ts +5 -2
  5. package/esm/mod.d.ts.map +1 -1
  6. package/esm/mod.js +7 -2
  7. package/esm/src/api.d.ts +4 -5
  8. package/esm/src/api.d.ts.map +1 -1
  9. package/esm/src/api.js +59 -37
  10. package/esm/src/apis/chatgptScraper/brightdata.js +1 -1
  11. package/esm/src/apis/chatgptScraper/oxy.js +1 -1
  12. package/esm/src/apis/chatgptScraper/scraper.js +2 -2
  13. package/esm/src/apis/hasdata/aim.js +1 -1
  14. package/esm/src/apis/hasdata/aio.js +1 -1
  15. package/esm/src/apis/hasdata/helpers.d.ts +1 -1
  16. package/esm/src/apis/hasdata/helpers.d.ts.map +1 -1
  17. package/esm/src/apis/hasdata/helpers.js +2 -2
  18. package/esm/src/assets/models.d.ts +60725 -0
  19. package/esm/src/assets/models.d.ts.map +1 -0
  20. package/esm/src/assets/models.js +71915 -0
  21. package/esm/src/helpers/async.d.ts.map +1 -0
  22. package/esm/src/{async.js → helpers/async.js} +1 -1
  23. package/esm/src/helpers/seedKeywords.d.ts.map +1 -0
  24. package/esm/src/helpers/urls.d.ts.map +1 -0
  25. package/esm/src/helpers/utils.d.ts.map +1 -0
  26. package/esm/src/llm.d.ts +35 -0
  27. package/esm/src/llm.d.ts.map +1 -0
  28. package/esm/src/llm.js +59 -0
  29. package/esm/src/providers/google.d.ts +12 -0
  30. package/esm/src/providers/google.d.ts.map +1 -0
  31. package/esm/src/providers/google.js +111 -0
  32. package/esm/src/providers/index.d.ts +13 -0
  33. package/esm/src/providers/index.d.ts.map +1 -0
  34. package/esm/src/providers/index.js +14 -0
  35. package/esm/src/providers/openai.d.ts +12 -0
  36. package/esm/src/providers/openai.d.ts.map +1 -0
  37. package/esm/src/providers/openai.js +141 -0
  38. package/esm/src/providers/pricing.d.ts +72 -0
  39. package/esm/src/providers/pricing.d.ts.map +1 -0
  40. package/esm/src/providers/pricing.js +88 -0
  41. package/esm/src/providers/registry.d.ts +20 -0
  42. package/esm/src/providers/registry.d.ts.map +1 -0
  43. package/esm/src/providers/registry.js +35 -0
  44. package/esm/src/providers/types.d.ts +49 -0
  45. package/esm/src/providers/types.d.ts.map +1 -0
  46. package/esm/src/providers/types.js +7 -0
  47. package/esm/src/response.d.ts +74 -0
  48. package/esm/src/response.d.ts.map +1 -0
  49. package/esm/src/response.js +110 -0
  50. package/esm/src/tool.d.ts +58 -0
  51. package/esm/src/tool.d.ts.map +1 -0
  52. package/esm/src/tool.js +91 -0
  53. package/esm/src/tools/brands.js +6 -6
  54. package/esm/src/tools/classifier.d.ts +80 -17
  55. package/esm/src/tools/classifier.d.ts.map +1 -1
  56. package/esm/src/tools/classifier.js +68 -80
  57. package/esm/src/tools/entities.d.ts +23 -12
  58. package/esm/src/tools/entities.d.ts.map +1 -1
  59. package/esm/src/tools/entities.js +27 -47
  60. package/esm/src/tools/funnel.js +7 -7
  61. package/esm/src/tools/generic.d.ts +17 -4
  62. package/esm/src/tools/generic.d.ts.map +1 -1
  63. package/esm/src/tools/generic.js +39 -14
  64. package/esm/src/tools/keywords.js +5 -5
  65. package/esm/src/tools/personas.d.ts +49 -2
  66. package/esm/src/tools/personas.d.ts.map +1 -1
  67. package/esm/src/tools/personas.js +59 -35
  68. package/esm/src/tools/scorer.d.ts +24 -6
  69. package/esm/src/tools/scorer.d.ts.map +1 -1
  70. package/esm/src/tools/scorer.js +27 -22
  71. package/esm/src/tools/search.d.ts.map +1 -1
  72. package/esm/src/tools/search.js +33 -9
  73. package/esm/src/tools/sentiment.d.ts +30 -8
  74. package/esm/src/tools/sentiment.d.ts.map +1 -1
  75. package/esm/src/tools/sentiment.js +33 -28
  76. package/esm/src/tools/sources.d.ts +5 -5
  77. package/esm/src/tools/sources.d.ts.map +1 -1
  78. package/esm/src/tools/sources.js +5 -6
  79. package/esm/src/tools/topics.d.ts +44 -16
  80. package/esm/src/tools/topics.d.ts.map +1 -1
  81. package/esm/src/tools/topics.js +77 -68
  82. package/esm/src/tools/translate.d.ts +22 -31
  83. package/esm/src/tools/translate.d.ts.map +1 -1
  84. package/esm/src/tools/translate.js +40 -36
  85. package/package.json +2 -1
  86. package/script/browser.d.ts +1 -1
  87. package/script/browser.d.ts.map +1 -1
  88. package/script/browser.js +1 -1
  89. package/script/mod.d.ts +5 -2
  90. package/script/mod.d.ts.map +1 -1
  91. package/script/mod.js +14 -2
  92. package/script/src/api.d.ts +4 -5
  93. package/script/src/api.d.ts.map +1 -1
  94. package/script/src/api.js +57 -35
  95. package/script/src/apis/chatgptScraper/brightdata.js +1 -1
  96. package/script/src/apis/chatgptScraper/oxy.js +1 -1
  97. package/script/src/apis/chatgptScraper/scraper.js +2 -2
  98. package/script/src/apis/hasdata/aim.js +1 -1
  99. package/script/src/apis/hasdata/aio.js +1 -1
  100. package/script/src/apis/hasdata/helpers.d.ts +1 -1
  101. package/script/src/apis/hasdata/helpers.d.ts.map +1 -1
  102. package/script/src/apis/hasdata/helpers.js +2 -2
  103. package/script/src/assets/models.d.ts +60725 -0
  104. package/script/src/assets/models.d.ts.map +1 -0
  105. package/script/src/assets/models.js +71917 -0
  106. package/script/src/helpers/async.d.ts.map +1 -0
  107. package/script/src/{async.js → helpers/async.js} +1 -1
  108. package/script/src/helpers/seedKeywords.d.ts.map +1 -0
  109. package/script/src/helpers/urls.d.ts.map +1 -0
  110. package/script/src/helpers/utils.d.ts.map +1 -0
  111. package/script/src/llm.d.ts +35 -0
  112. package/script/src/llm.d.ts.map +1 -0
  113. package/script/src/llm.js +65 -0
  114. package/script/src/providers/google.d.ts +12 -0
  115. package/script/src/providers/google.d.ts.map +1 -0
  116. package/script/src/providers/google.js +148 -0
  117. package/script/src/providers/index.d.ts +13 -0
  118. package/script/src/providers/index.d.ts.map +1 -0
  119. package/script/src/providers/index.js +24 -0
  120. package/script/src/providers/openai.d.ts +12 -0
  121. package/script/src/providers/openai.d.ts.map +1 -0
  122. package/script/src/providers/openai.js +181 -0
  123. package/script/src/providers/pricing.d.ts +72 -0
  124. package/script/src/providers/pricing.d.ts.map +1 -0
  125. package/script/src/providers/pricing.js +97 -0
  126. package/script/src/providers/registry.d.ts +20 -0
  127. package/script/src/providers/registry.d.ts.map +1 -0
  128. package/script/src/providers/registry.js +39 -0
  129. package/script/src/providers/types.d.ts +49 -0
  130. package/script/src/providers/types.d.ts.map +1 -0
  131. package/script/src/providers/types.js +8 -0
  132. package/script/src/response.d.ts +74 -0
  133. package/script/src/response.d.ts.map +1 -0
  134. package/script/src/response.js +114 -0
  135. package/script/src/tool.d.ts +58 -0
  136. package/script/src/tool.d.ts.map +1 -0
  137. package/script/src/tool.js +95 -0
  138. package/script/src/tools/brands.js +6 -6
  139. package/script/src/tools/classifier.d.ts +80 -17
  140. package/script/src/tools/classifier.d.ts.map +1 -1
  141. package/script/src/tools/classifier.js +72 -85
  142. package/script/src/tools/entities.d.ts +23 -12
  143. package/script/src/tools/entities.d.ts.map +1 -1
  144. package/script/src/tools/entities.js +29 -51
  145. package/script/src/tools/funnel.js +7 -7
  146. package/script/src/tools/generic.d.ts +17 -4
  147. package/script/src/tools/generic.d.ts.map +1 -1
  148. package/script/src/tools/generic.js +39 -14
  149. package/script/src/tools/keywords.js +5 -5
  150. package/script/src/tools/personas.d.ts +49 -2
  151. package/script/src/tools/personas.d.ts.map +1 -1
  152. package/script/src/tools/personas.js +63 -36
  153. package/script/src/tools/scorer.d.ts +24 -6
  154. package/script/src/tools/scorer.d.ts.map +1 -1
  155. package/script/src/tools/scorer.js +28 -24
  156. package/script/src/tools/search.d.ts.map +1 -1
  157. package/script/src/tools/search.js +69 -9
  158. package/script/src/tools/sentiment.d.ts +30 -8
  159. package/script/src/tools/sentiment.d.ts.map +1 -1
  160. package/script/src/tools/sentiment.js +37 -30
  161. package/script/src/tools/sources.d.ts +5 -5
  162. package/script/src/tools/sources.d.ts.map +1 -1
  163. package/script/src/tools/sources.js +4 -5
  164. package/script/src/tools/topics.d.ts +44 -16
  165. package/script/src/tools/topics.d.ts.map +1 -1
  166. package/script/src/tools/topics.js +80 -72
  167. package/script/src/tools/translate.d.ts +22 -31
  168. package/script/src/tools/translate.d.ts.map +1 -1
  169. package/script/src/tools/translate.js +43 -40
  170. package/esm/src/async.d.ts.map +0 -1
  171. package/esm/src/models.d.ts +0 -18
  172. package/esm/src/models.d.ts.map +0 -1
  173. package/esm/src/models.js +0 -48
  174. package/esm/src/openai.d.ts +0 -17
  175. package/esm/src/openai.d.ts.map +0 -1
  176. package/esm/src/openai.js +0 -136
  177. package/esm/src/tools/seedKeywords.d.ts.map +0 -1
  178. package/esm/src/urls.d.ts.map +0 -1
  179. package/esm/src/utils.d.ts.map +0 -1
  180. package/script/src/async.d.ts.map +0 -1
  181. package/script/src/models.d.ts +0 -18
  182. package/script/src/models.d.ts.map +0 -1
  183. package/script/src/models.js +0 -52
  184. package/script/src/openai.d.ts +0 -17
  185. package/script/src/openai.d.ts.map +0 -1
  186. package/script/src/openai.js +0 -175
  187. package/script/src/tools/seedKeywords.d.ts.map +0 -1
  188. package/script/src/urls.d.ts.map +0 -1
  189. package/script/src/utils.d.ts.map +0 -1
  190. /package/esm/src/{async.d.ts → helpers/async.d.ts} +0 -0
  191. /package/esm/src/{tools → helpers}/seedKeywords.d.ts +0 -0
  192. /package/esm/src/{tools → helpers}/seedKeywords.js +0 -0
  193. /package/esm/src/{urls.d.ts → helpers/urls.d.ts} +0 -0
  194. /package/esm/src/{urls.js → helpers/urls.js} +0 -0
  195. /package/esm/src/{utils.d.ts → helpers/utils.d.ts} +0 -0
  196. /package/esm/src/{utils.js → helpers/utils.js} +0 -0
  197. /package/script/src/{async.d.ts → helpers/async.d.ts} +0 -0
  198. /package/script/src/{tools → helpers}/seedKeywords.d.ts +0 -0
  199. /package/script/src/{tools → helpers}/seedKeywords.js +0 -0
  200. /package/script/src/{urls.d.ts → helpers/urls.d.ts} +0 -0
  201. /package/script/src/{urls.js → helpers/urls.js} +0 -0
  202. /package/script/src/{utils.d.ts → helpers/utils.d.ts} +0 -0
  203. /package/script/src/{utils.js → helpers/utils.js} +0 -0
package/esm/browser.d.ts CHANGED
@@ -8,5 +8,5 @@
8
8
  * @module
9
9
  */
10
10
  export * from './src/schemas/index.js';
11
- export * from './src/tools/seedKeywords.js';
11
+ export * from './src/helpers/seedKeywords.js';
12
12
  //# sourceMappingURL=browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,wBAAwB,CAAC;AAGvC,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,wBAAwB,CAAC;AAGvC,cAAc,+BAA+B,CAAC"}
package/esm/browser.js CHANGED
@@ -10,4 +10,4 @@
10
10
  // Types and schemas (no runtime dependencies)
11
11
  export * from './src/schemas/index.js';
12
12
  // Pure functions for seed keyword handling (no external dependencies)
13
- export * from './src/tools/seedKeywords.js';
13
+ export * from './src/helpers/seedKeywords.js';
package/esm/mod.d.ts CHANGED
@@ -3,19 +3,22 @@
3
3
  *
4
4
  * @module
5
5
  */
6
+ export * from './src/llm.js';
7
+ export { BatchResponse } from './src/response.js';
8
+ export { getProvider, getProviderForModel, getModelPricing, getModelInfo, calculateCost, type ModelPricing, type ModelInfo, } from './src/providers/index.js';
6
9
  export * from './src/tools/keywords.js';
7
10
  export * from './src/tools/classifier.js';
8
11
  export * from './src/tools/funnel.js';
9
12
  export * from './src/tools/personas.js';
10
13
  export * from './src/tools/search.js';
11
14
  export * from './src/tools/topics.js';
12
- export * from './src/utils.js';
15
+ export * from './src/helpers/utils.js';
13
16
  export * from './src/tools/brands.js';
14
17
  export * from './src/tools/translate.js';
15
18
  export * from './src/tools/sentiment.js';
16
19
  export * from './src/tools/sources.js';
17
20
  export * from './src/tools/entities.js';
18
- export * from './src/tools/seedKeywords.js';
21
+ export * from './src/helpers/seedKeywords.js';
19
22
  export * from './src/tools/generic.js';
20
23
  export * from './src/api.js';
21
24
  export * from './src/apis/chatgptScraper/index.js';
package/esm/mod.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACN,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,SAAS,GACd,MAAM,0BAA0B,CAAC;AAGlC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,wBAAwB,CAAC"}
package/esm/mod.js CHANGED
@@ -3,19 +3,24 @@
3
3
  *
4
4
  * @module
5
5
  */
6
+ // Core LLM interface and types
7
+ export * from './src/llm.js';
8
+ export { BatchResponse } from './src/response.js';
9
+ export { getProvider, getProviderForModel, getModelPricing, getModelInfo, calculateCost, } from './src/providers/index.js';
10
+ // Tools
6
11
  export * from './src/tools/keywords.js';
7
12
  export * from './src/tools/classifier.js';
8
13
  export * from './src/tools/funnel.js';
9
14
  export * from './src/tools/personas.js';
10
15
  export * from './src/tools/search.js';
11
16
  export * from './src/tools/topics.js';
12
- export * from './src/utils.js';
17
+ export * from './src/helpers/utils.js';
13
18
  export * from './src/tools/brands.js';
14
19
  export * from './src/tools/translate.js';
15
20
  export * from './src/tools/sentiment.js';
16
21
  export * from './src/tools/sources.js';
17
22
  export * from './src/tools/entities.js';
18
- export * from './src/tools/seedKeywords.js';
23
+ export * from './src/helpers/seedKeywords.js';
19
24
  export * from './src/tools/generic.js';
20
25
  export * from './src/api.js';
21
26
  export * from './src/apis/chatgptScraper/index.js';
package/esm/src/api.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { type JobId } from './apis/chatgptScraper/index.js';
2
- import { ModelId } from './models.js';
3
2
  import { type Entity } from './schemas/entity.schema.js';
4
3
  import { type Funnel } from './schemas/funnel.schema.js';
5
4
  import type { ModelIdentifier } from './schemas/models.schema.js';
@@ -24,7 +23,7 @@ export type EnrichedModelResponse = {
24
23
  rankedBrandsInSourceTitles: Array<string>;
25
24
  rankedBrandsInSourceDomains: Array<string>;
26
25
  };
27
- export declare function queryModel(prompts: Array<string | JobId>, model: ModelIdentifier | ModelId, searchCountry?: string | null): Promise<Array<ModelResponse>>;
26
+ export declare function queryModel(prompts: Array<string | JobId>, model: ModelIdentifier, searchCountry?: string | null): Promise<Array<ModelResponse>>;
28
27
  export declare function classifyIntent(texts: Array<string>): Promise<Array<string | null>>;
29
28
  export declare function extractAndAssignTopics(texts: Array<string>): Promise<Array<{
30
29
  topic: string | null;
@@ -36,7 +35,7 @@ export declare function assignFunnelStages(texts: Array<string>, funnel: Funnel)
36
35
  }>>;
37
36
  export declare function classifyIntoPersonas(texts: Array<string>, personas: Array<Persona>): Promise<Array<Array<string> | null>>;
38
37
  export declare function classifyBrandedNonBranded(texts: Array<string>): Promise<Array<string | null>>;
39
- export declare function extractEntities(texts: Array<string>): Promise<Array<Array<Entity>>>;
40
- export declare function scorePurchaseProbability(texts: Array<string>, numDays?: number): Promise<Array<number>>;
41
- export declare function scoreRelevance(prompts: Array<string>, context: BrandContext): Promise<Array<number>>;
38
+ export declare function extractEntities(texts: Array<string>): Promise<Array<Array<Entity> | null>>;
39
+ export declare function scorePurchaseProbability(texts: Array<string>, numDays?: number): Promise<Array<number | null>>;
40
+ export declare function scoreRelevance(prompts: Array<string>, context: BrandContext): Promise<Array<number | null>>;
42
41
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/src/api.ts"],"names":[],"mappings":"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"}
package/esm/src/api.js CHANGED
@@ -2,23 +2,22 @@
2
2
  import { fetchAIMBatch } from './apis/hasdata/aim.js';
3
3
  import { fetchAIOBatch } from './apis/hasdata/aio.js';
4
4
  import { downloadGPTSnapshots, scrapeGPTBatch } from './apis/chatgptScraper/index.js';
5
- import { classifyBatch, labelBatch } from './tools/classifier.js';
6
- import { extractEntitiesBatch } from './tools/entities.js';
5
+ import { Classifier, Labeler } from './tools/classifier.js';
6
+ import { EntityExtractor } from './tools/entities.js';
7
7
  import { funnelToTopics } from './tools/funnel.js';
8
- import { ModelId } from './models.js';
9
- import { scoreBatch } from './tools/scorer.js';
10
- import { extractTopics, assignTopics } from './tools/topics.js';
11
- import { dedent } from './utils.js';
8
+ import { cleanColumnName } from './helpers/utils.js';
9
+ import { Scorer } from './tools/scorer.js';
10
+ import { TopicExtractor, TopicAssigner } from './tools/topics.js';
11
+ import { dedent } from './helpers/utils.js';
12
12
  export async function queryModel(prompts, model, searchCountry = null) {
13
- const modelId = model instanceof ModelId ? model : new ModelId(model);
14
13
  let searchResults;
15
- if (modelId.equals('google/ai-overview')) {
14
+ if (model === 'google/ai-overview') {
16
15
  searchResults = await fetchAIOBatch(prompts, searchCountry, null);
17
16
  }
18
- else if (modelId.equals('google/ai-mode')) {
17
+ else if (model === 'google/ai-mode') {
19
18
  searchResults = await fetchAIMBatch(prompts, searchCountry, null);
20
19
  }
21
- else if (modelId.provider == 'openai' || modelId.name.includes('gpt-') || modelId.name.includes('chatgpt')) {
20
+ else if (model.startsWith('openai/') || model.includes('chatgpt')) {
22
21
  // JobIds are alphanumeric strings without spaces
23
22
  // (e.g., "7420410504197219329" for Oxylabs, "s_xxxxx" for Brightdata)
24
23
  // Prompts are natural language text with spaces
@@ -35,13 +34,15 @@ export async function queryModel(prompts, model, searchCountry = null) {
35
34
  }
36
35
  }
37
36
  else {
38
- throw new Error(`Unsupported model: ${modelId}`);
37
+ throw new Error(`Unsupported model: ${model}`);
39
38
  }
39
+ // Convert model identifier to column name (e.g., "google/ai-overview" -> "ai_overview")
40
+ const modelColumnName = cleanColumnName(model.split('/').pop() ?? model);
40
41
  const responses = searchResults.map((sr, i) => ({
41
42
  answer: sr.answer,
42
43
  sources: sr.sources,
43
44
  prompt: sr.prompt ?? (typeof prompts[i] === 'string' ? prompts[i] : ''),
44
- model: modelId.columnName(),
45
+ model: modelColumnName,
45
46
  searchQueries: sr.searchQueries ?? [],
46
47
  searchSources: sr.searchSources ?? []
47
48
  }));
@@ -54,20 +55,27 @@ const intentLabels = {
54
55
  };
55
56
  export async function classifyIntent(texts) {
56
57
  console.log('Classifying prompt intents...');
58
+ const classifier = new Classifier({
59
+ labels: intentLabels,
60
+ instructions: 'Classify the search query into one of the following intents: informational, navigational, transactional.'
61
+ }, { model: 'gpt-4.1-mini' });
57
62
  const textRecords = texts.map(text => ({ text }));
58
- const intents = await classifyBatch(textRecords, intentLabels, 'Classify the search query into one of the following intents: informational, navigational, transactional.', 'gpt-4.1-mini');
59
- return intents;
63
+ const intents = await classifier.batch(textRecords);
64
+ return intents.toArray();
60
65
  }
61
66
  export async function extractAndAssignTopics(texts) {
62
67
  console.log('Identifying topics...');
63
68
  const textRecords = texts.map(text => ({ text }));
64
- const taxonomy = await extractTopics({
65
- records: textRecords,
66
- maxSamples: 500
67
- });
69
+ const extractor = new TopicExtractor({ maxSamples: 500 }, { model: 'gpt-4.1' });
70
+ const taxonomyResult = await extractor.invoke(textRecords);
71
+ const taxonomy = taxonomyResult.parsed;
72
+ if (taxonomy == null) {
73
+ return texts.map(() => ({ topic: null, subtopic: null }));
74
+ }
68
75
  console.log('Assigning topics...');
69
- const topicLabels = await assignTopics(texts, taxonomy);
70
- return topicLabels.map(label => ({
76
+ const assigner = new TopicAssigner({ taxonomy }, { model: 'gpt-4.1-mini' });
77
+ const topicLabels = await assigner.batch(texts);
78
+ return topicLabels.toArray().map(label => ({
71
79
  topic: label?.topic ?? null,
72
80
  subtopic: label?.subtopic ?? null
73
81
  }));
@@ -75,8 +83,9 @@ export async function extractAndAssignTopics(texts) {
75
83
  export async function assignFunnelStages(texts, funnel) {
76
84
  console.log('Assigning funnel stages...');
77
85
  const funnelTopics = funnelToTopics(funnel);
78
- const funnelLabels = await assignTopics(texts, funnelTopics);
79
- return funnelLabels.map(label => ({
86
+ const assigner = new TopicAssigner({ taxonomy: funnelTopics }, { model: 'gpt-4.1-mini' });
87
+ const funnelLabels = await assigner.batch(texts);
88
+ return funnelLabels.toArray().map(label => ({
80
89
  funnelStage: label?.topic ?? null,
81
90
  funnelCategory: label?.subtopic ?? null
82
91
  }));
@@ -87,9 +96,13 @@ export async function classifyIntoPersonas(texts, personas) {
87
96
  personas.forEach(persona => {
88
97
  personaLabels[persona.name] = persona.description;
89
98
  });
99
+ const labeler = new Labeler({
100
+ labels: personaLabels,
101
+ instructions: 'Classify the search query into one or more customer personas based on the language, intent, and context.'
102
+ }, { model: 'gpt-4.1-mini' });
90
103
  const textRecords = texts.map(text => ({ text }));
91
- const personaAssignments = await labelBatch(textRecords, personaLabels, 'Classify the search query into one or more customer personas based on the language, intent, and context.', 'gpt-4.1-mini');
92
- return personaAssignments;
104
+ const personaAssignments = await labeler.batch(textRecords);
105
+ return personaAssignments.toArray();
93
106
  }
94
107
  export async function classifyBrandedNonBranded(texts) {
95
108
  console.log('Classifying prompts into branded/non-branded...');
@@ -97,18 +110,25 @@ export async function classifyBrandedNonBranded(texts) {
97
110
  'branded': 'The query explicitly mentions a specific brand name, company name, product name, or trademark. It shows clear brand awareness and intent to find information about that particular brand.',
98
111
  'non-branded': 'The query is generic and does not mention any specific brand names. It focuses on product categories, features, problems, or general information without brand specificity.'
99
112
  };
113
+ const classifier = new Classifier({
114
+ labels: brandedLabels,
115
+ instructions: 'Classify whether the search query mentions specific brands or is generic/category-based.'
116
+ }, { model: 'gpt-4.1-mini' });
100
117
  const textRecords = texts.map(text => ({ text }));
101
- const brandedClassifications = await classifyBatch(textRecords, brandedLabels, 'Classify whether the search query mentions specific brands or is generic/category-based.', 'gpt-4.1-mini');
102
- return brandedClassifications;
118
+ const brandedClassifications = await classifier.batch(textRecords);
119
+ return brandedClassifications.toArray();
103
120
  }
104
121
  export async function extractEntities(texts) {
105
- const entityDefinitions = `
106
- - brands: Any brand or companies mentioned
107
- - products: Any products or services mentioned
108
- - features: Specific features or attributes of products/services
109
- - issues: Problems or issues mentioned
110
- `;
111
- return extractEntitiesBatch(texts, entityDefinitions, '', 'gpt-4.1-mini');
122
+ const extractor = new EntityExtractor({
123
+ entityDefinitions: {
124
+ brands: 'Any brand or companies mentioned',
125
+ products: 'Any products or services mentioned',
126
+ features: 'Specific features or attributes of products/services',
127
+ issues: 'Problems or issues mentioned'
128
+ }
129
+ }, { model: 'gpt-4.1-mini' });
130
+ const result = await extractor.batch(texts);
131
+ return result.toArray();
112
132
  }
113
133
  export async function scorePurchaseProbability(texts, numDays = 30) {
114
134
  console.log('Scoring purchase probability...');
@@ -118,8 +138,9 @@ export async function scorePurchaseProbability(texts, numDays = 30) {
118
138
  in the next ${numDays} days. The input record is a text query representing a search
119
139
  that a user may perform using a traditional search engine or LLM chat.
120
140
  `);
121
- const scores = await scoreBatch(records, 'Purchase Probability', description, 'integer', 0, 100, 'gpt-4.1-mini');
122
- return scores;
141
+ const scorer = new Scorer({ name: 'Purchase Probability', description: description, type: 'integer', min: 0, max: 100 }, { model: 'gpt-4.1-mini' });
142
+ const scores = await scorer.batch(records);
143
+ return scores.toArray();
123
144
  }
124
145
  export async function scoreRelevance(prompts, context) {
125
146
  console.log('Scoring prompt relevance...');
@@ -156,6 +177,7 @@ export async function scoreRelevance(prompts, context) {
156
177
  1.0 means the keyword/prompt is highly relevant and specific to the context, e.g.
157
178
  "best CRM software for small business" for a brand selling CRM software.
158
179
  `);
159
- const scores = await scoreBatch(records, 'Prompt Relevance', description, 'number', 0.0, 1.0, 'gpt-4.1-mini');
160
- return scores;
180
+ const scorer = new Scorer({ name: 'Prompt Relevance', description: description, type: 'number', min: 0.0, max: 1.0 }, { model: 'gpt-4.1-mini' });
181
+ const scores = await scorer.batch(records);
182
+ return scores.toArray();
161
183
  }
@@ -8,7 +8,7 @@
8
8
  * 3. Download: GET /datasets/v3/snapshot/{snapshot_id}
9
9
  */
10
10
  import * as dntShim from "../../../_dnt.shims.js";
11
- import { withRetries, sleep } from '../../async.js';
11
+ import { withRetries, sleep } from '../../helpers/async.js';
12
12
  import { getAbortSignal, cleanAnswer, buildSources, buildSearchSources } from './scraper.js';
13
13
  // ============================================================================
14
14
  // Constants
@@ -8,7 +8,7 @@
8
8
  * 3. Download: GET /v1/queries/{id}/results
9
9
  */
10
10
  import * as dntShim from "../../../_dnt.shims.js";
11
- import { withRetries, sleep } from '../../async.js';
11
+ import { withRetries, sleep } from '../../helpers/async.js';
12
12
  import { getAbortSignal, cleanAnswer, buildSources } from './scraper.js';
13
13
  // ============================================================================
14
14
  // Constants
@@ -5,8 +5,8 @@
5
5
  * Uses composition: providers supply functions, this module orchestrates them.
6
6
  */
7
7
  import * as dntShim from "../../../_dnt.shims.js";
8
- import { mapParallel } from '../../async.js';
9
- import { extractDomain } from '../../urls.js';
8
+ import { mapParallel } from '../../helpers/async.js';
9
+ import { extractDomain } from '../../helpers/urls.js';
10
10
  // ============================================================================
11
11
  // Shared Utilities
12
12
  // ============================================================================
@@ -1,5 +1,5 @@
1
1
  /* eslint no-console: ["warn", { allow: ["log", "warn", "error"] }] */
2
- import { mapParallel } from '../../async.js';
2
+ import { mapParallel } from '../../helpers/async.js';
3
3
  import { fetchHasDataWithRetry, HASDATA_CONCURRENCY, parseAIM } from './helpers.js';
4
4
  export async function fetchAIM(prompt, country = null, language = null, location = null) {
5
5
  const aimEndpoint = 'https://api.hasdata.com/scrape/google/ai-mode';
@@ -1,5 +1,5 @@
1
1
  /* eslint no-console: ["warn", { allow: ["log", "warn", "error"] }] */
2
- import { mapParallel } from '../../async.js';
2
+ import { mapParallel } from '../../helpers/async.js';
3
3
  import { fetchHasDataWithRetry, HASDATA_CONCURRENCY, parseAIO } from './helpers.js';
4
4
  function aioRequestUrl(aio) {
5
5
  if (aio.pageToken && aio.hasdataLink) {
@@ -1,4 +1,4 @@
1
- import { type RetryConfig } from '../../async.js';
1
+ import { type RetryConfig } from '../../helpers/async.js';
2
2
  import type { Source } from '../../schemas/sources.schema.js';
3
3
  export declare const HASDATA_CONCURRENCY = 29;
4
4
  export declare const HASDATA_RETRY_CONFIG: RetryConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/src/apis/hasdata/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAG9D,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,eAAO,MAAM,oBAAoB,EAAE,WAMlC,CAAC;AAEF,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAED,wBAAsB,qBAAqB,CAC1C,GAAG,EAAE,MAAM,EACX,WAAW,GAAE,WAAkC,GAC7C,OAAO,CAAC,QAAQ,CAAC,CAgCnB;AAED,UAAU,QAAQ;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACvB;AAED,UAAU,SAAS;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvB,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,SAAS;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,eAAe;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,MAAM;IACtB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACvB;AAwJD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,SAAS,CAInD;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAI/C"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/src/apis/hasdata/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAG9D,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,eAAO,MAAM,oBAAoB,EAAE,WAMlC,CAAC;AAEF,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAED,wBAAsB,qBAAqB,CAC1C,GAAG,EAAE,MAAM,EACX,WAAW,GAAE,WAAkC,GAC7C,OAAO,CAAC,QAAQ,CAAC,CAgCnB;AAED,UAAU,QAAQ;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACvB;AAED,UAAU,SAAS;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvB,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,SAAS;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,eAAe;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,MAAM;IACtB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACvB;AAwJD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,SAAS,CAInD;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAI/C"}
@@ -1,6 +1,6 @@
1
1
  import * as dntShim from "../../../_dnt.shims.js";
2
- import { withRetries } from '../../async.js';
3
- import { extractDomain } from '../../urls.js';
2
+ import { withRetries } from '../../helpers/async.js';
3
+ import { extractDomain } from '../../helpers/urls.js';
4
4
  export const HASDATA_CONCURRENCY = 29;
5
5
  export const HASDATA_RETRY_CONFIG = {
6
6
  maxRetries: 3,