@open-mercato/search 0.4.2-canary-c02407ff85
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.
- package/AGENTS.md +678 -0
- package/build.mjs +92 -0
- package/dist/di.js +157 -0
- package/dist/di.js.map +7 -0
- package/dist/fulltext/drivers/index.js +21 -0
- package/dist/fulltext/drivers/index.js.map +7 -0
- package/dist/fulltext/drivers/meilisearch/index.js +320 -0
- package/dist/fulltext/drivers/meilisearch/index.js.map +7 -0
- package/dist/fulltext/index.js +7 -0
- package/dist/fulltext/index.js.map +7 -0
- package/dist/fulltext/types.js +1 -0
- package/dist/fulltext/types.js.map +7 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +7 -0
- package/dist/indexer/index.js +8 -0
- package/dist/indexer/index.js.map +7 -0
- package/dist/indexer/search-indexer.js +848 -0
- package/dist/indexer/search-indexer.js.map +7 -0
- package/dist/indexer/subscribers/delete.js +41 -0
- package/dist/indexer/subscribers/delete.js.map +7 -0
- package/dist/lib/debug.js +34 -0
- package/dist/lib/debug.js.map +7 -0
- package/dist/lib/fallback-presenter.js +107 -0
- package/dist/lib/fallback-presenter.js.map +7 -0
- package/dist/lib/field-policy.js +75 -0
- package/dist/lib/field-policy.js.map +7 -0
- package/dist/lib/index.js +19 -0
- package/dist/lib/index.js.map +7 -0
- package/dist/lib/merger.js +93 -0
- package/dist/lib/merger.js.map +7 -0
- package/dist/lib/presenter-enricher.js +192 -0
- package/dist/lib/presenter-enricher.js.map +7 -0
- package/dist/modules/search/acl.js +14 -0
- package/dist/modules/search/acl.js.map +7 -0
- package/dist/modules/search/ai-tools.js +284 -0
- package/dist/modules/search/ai-tools.js.map +7 -0
- package/dist/modules/search/api/embeddings/reindex/cancel/route.js +65 -0
- package/dist/modules/search/api/embeddings/reindex/cancel/route.js.map +7 -0
- package/dist/modules/search/api/embeddings/reindex/route.js +165 -0
- package/dist/modules/search/api/embeddings/reindex/route.js.map +7 -0
- package/dist/modules/search/api/embeddings/route.js +246 -0
- package/dist/modules/search/api/embeddings/route.js.map +7 -0
- package/dist/modules/search/api/index/route.js +245 -0
- package/dist/modules/search/api/index/route.js.map +7 -0
- package/dist/modules/search/api/reindex/cancel/route.js +65 -0
- package/dist/modules/search/api/reindex/cancel/route.js.map +7 -0
- package/dist/modules/search/api/reindex/route.js +332 -0
- package/dist/modules/search/api/reindex/route.js.map +7 -0
- package/dist/modules/search/api/search/global/route.js +100 -0
- package/dist/modules/search/api/search/global/route.js.map +7 -0
- package/dist/modules/search/api/search/route.js +101 -0
- package/dist/modules/search/api/search/route.js.map +7 -0
- package/dist/modules/search/api/settings/fulltext/route.js +55 -0
- package/dist/modules/search/api/settings/fulltext/route.js.map +7 -0
- package/dist/modules/search/api/settings/global-search/route.js +80 -0
- package/dist/modules/search/api/settings/global-search/route.js.map +7 -0
- package/dist/modules/search/api/settings/route.js +118 -0
- package/dist/modules/search/api/settings/route.js.map +7 -0
- package/dist/modules/search/api/settings/vector-store/route.js +77 -0
- package/dist/modules/search/api/settings/vector-store/route.js.map +7 -0
- package/dist/modules/search/backend/config/search/page.js +10 -0
- package/dist/modules/search/backend/config/search/page.js.map +7 -0
- package/dist/modules/search/backend/config/search/page.meta.js +24 -0
- package/dist/modules/search/backend/config/search/page.meta.js.map +7 -0
- package/dist/modules/search/cli.js +698 -0
- package/dist/modules/search/cli.js.map +7 -0
- package/dist/modules/search/di.js +32 -0
- package/dist/modules/search/di.js.map +7 -0
- package/dist/modules/search/frontend/components/GlobalSearchDialog.js +357 -0
- package/dist/modules/search/frontend/components/GlobalSearchDialog.js.map +7 -0
- package/dist/modules/search/frontend/components/HybridSearchTable.js +343 -0
- package/dist/modules/search/frontend/components/HybridSearchTable.js.map +7 -0
- package/dist/modules/search/frontend/components/SearchSettingsPageClient.js +303 -0
- package/dist/modules/search/frontend/components/SearchSettingsPageClient.js.map +7 -0
- package/dist/modules/search/frontend/components/sections/FulltextSearchSection.js +360 -0
- package/dist/modules/search/frontend/components/sections/FulltextSearchSection.js.map +7 -0
- package/dist/modules/search/frontend/components/sections/GlobalSearchSection.js +101 -0
- package/dist/modules/search/frontend/components/sections/GlobalSearchSection.js.map +7 -0
- package/dist/modules/search/frontend/components/sections/VectorSearchSection.js +608 -0
- package/dist/modules/search/frontend/components/sections/VectorSearchSection.js.map +7 -0
- package/dist/modules/search/frontend/index.js +9 -0
- package/dist/modules/search/frontend/index.js.map +7 -0
- package/dist/modules/search/frontend/utils.js +41 -0
- package/dist/modules/search/frontend/utils.js.map +7 -0
- package/dist/modules/search/i18n/de.json +61 -0
- package/dist/modules/search/i18n/en.json +72 -0
- package/dist/modules/search/i18n/es.json +61 -0
- package/dist/modules/search/i18n/pl.json +61 -0
- package/dist/modules/search/index.js +11 -0
- package/dist/modules/search/index.js.map +7 -0
- package/dist/modules/search/lib/auto-indexing.js +29 -0
- package/dist/modules/search/lib/auto-indexing.js.map +7 -0
- package/dist/modules/search/lib/embedding-config.js +131 -0
- package/dist/modules/search/lib/embedding-config.js.map +7 -0
- package/dist/modules/search/lib/global-search-config.js +45 -0
- package/dist/modules/search/lib/global-search-config.js.map +7 -0
- package/dist/modules/search/lib/reindex-lock.js +99 -0
- package/dist/modules/search/lib/reindex-lock.js.map +7 -0
- package/dist/modules/search/subscribers/fulltext_upsert.js +64 -0
- package/dist/modules/search/subscribers/fulltext_upsert.js.map +7 -0
- package/dist/modules/search/subscribers/vector_delete.js +58 -0
- package/dist/modules/search/subscribers/vector_delete.js.map +7 -0
- package/dist/modules/search/subscribers/vector_purge.js +142 -0
- package/dist/modules/search/subscribers/vector_purge.js.map +7 -0
- package/dist/modules/search/subscribers/vector_upsert.js +58 -0
- package/dist/modules/search/subscribers/vector_upsert.js.map +7 -0
- package/dist/modules/search/workers/fulltext-index.worker.js +240 -0
- package/dist/modules/search/workers/fulltext-index.worker.js.map +7 -0
- package/dist/modules/search/workers/vector-index.worker.js +234 -0
- package/dist/modules/search/workers/vector-index.worker.js.map +7 -0
- package/dist/queue/fulltext-indexing.js +15 -0
- package/dist/queue/fulltext-indexing.js.map +7 -0
- package/dist/queue/index.js +3 -0
- package/dist/queue/index.js.map +7 -0
- package/dist/queue/vector-indexing.js +15 -0
- package/dist/queue/vector-indexing.js.map +7 -0
- package/dist/service.js +286 -0
- package/dist/service.js.map +7 -0
- package/dist/strategies/fulltext.strategy.js +116 -0
- package/dist/strategies/fulltext.strategy.js.map +7 -0
- package/dist/strategies/index.js +12 -0
- package/dist/strategies/index.js.map +7 -0
- package/dist/strategies/token.strategy.js +80 -0
- package/dist/strategies/token.strategy.js.map +7 -0
- package/dist/strategies/vector.strategy.js +137 -0
- package/dist/strategies/vector.strategy.js.map +7 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +7 -0
- package/dist/vector/drivers/chromadb/index.js +44 -0
- package/dist/vector/drivers/chromadb/index.js.map +7 -0
- package/dist/vector/drivers/index.js +9 -0
- package/dist/vector/drivers/index.js.map +7 -0
- package/dist/vector/drivers/pgvector/index.js +509 -0
- package/dist/vector/drivers/pgvector/index.js.map +7 -0
- package/dist/vector/drivers/qdrant/index.js +44 -0
- package/dist/vector/drivers/qdrant/index.js.map +7 -0
- package/dist/vector/index.js +4 -0
- package/dist/vector/index.js.map +7 -0
- package/dist/vector/lib/vector-logs.js +33 -0
- package/dist/vector/lib/vector-logs.js.map +7 -0
- package/dist/vector/services/checksum.js +20 -0
- package/dist/vector/services/checksum.js.map +7 -0
- package/dist/vector/services/embedding.js +222 -0
- package/dist/vector/services/embedding.js.map +7 -0
- package/dist/vector/services/index.js +4 -0
- package/dist/vector/services/index.js.map +7 -0
- package/dist/vector/services/vector-index.service.js +960 -0
- package/dist/vector/services/vector-index.service.js.map +7 -0
- package/dist/vector/types/pg.d.js +1 -0
- package/dist/vector/types/pg.d.js.map +7 -0
- package/dist/vector/types.js +75 -0
- package/dist/vector/types.js.map +7 -0
- package/jest.config.cjs +19 -0
- package/package.json +142 -0
- package/src/__tests__/queue.test.ts +148 -0
- package/src/__tests__/service.test.ts +345 -0
- package/src/__tests__/workers.test.ts +319 -0
- package/src/di.ts +291 -0
- package/src/fulltext/drivers/index.ts +41 -0
- package/src/fulltext/drivers/meilisearch/index.ts +410 -0
- package/src/fulltext/index.ts +13 -0
- package/src/fulltext/types.ts +115 -0
- package/src/index.ts +36 -0
- package/src/indexer/index.ts +13 -0
- package/src/indexer/search-indexer.ts +1141 -0
- package/src/indexer/subscribers/delete.ts +49 -0
- package/src/lib/debug.ts +46 -0
- package/src/lib/fallback-presenter.ts +106 -0
- package/src/lib/field-policy.ts +169 -0
- package/src/lib/index.ts +13 -0
- package/src/lib/merger.ts +159 -0
- package/src/lib/presenter-enricher.ts +323 -0
- package/src/modules/search/README.md +694 -0
- package/src/modules/search/acl.ts +10 -0
- package/src/modules/search/ai-tools.ts +467 -0
- package/src/modules/search/api/embeddings/reindex/cancel/route.ts +77 -0
- package/src/modules/search/api/embeddings/reindex/route.ts +197 -0
- package/src/modules/search/api/embeddings/route.ts +304 -0
- package/src/modules/search/api/index/route.ts +297 -0
- package/src/modules/search/api/reindex/cancel/route.ts +77 -0
- package/src/modules/search/api/reindex/route.ts +419 -0
- package/src/modules/search/api/search/global/route.ts +120 -0
- package/src/modules/search/api/search/route.ts +121 -0
- package/src/modules/search/api/settings/fulltext/route.ts +82 -0
- package/src/modules/search/api/settings/global-search/route.ts +91 -0
- package/src/modules/search/api/settings/route.ts +187 -0
- package/src/modules/search/api/settings/vector-store/route.ts +105 -0
- package/src/modules/search/backend/config/search/page.meta.ts +22 -0
- package/src/modules/search/backend/config/search/page.tsx +12 -0
- package/src/modules/search/cli.ts +818 -0
- package/src/modules/search/di.ts +50 -0
- package/src/modules/search/frontend/components/GlobalSearchDialog.tsx +436 -0
- package/src/modules/search/frontend/components/HybridSearchTable.tsx +418 -0
- package/src/modules/search/frontend/components/SearchSettingsPageClient.tsx +476 -0
- package/src/modules/search/frontend/components/sections/FulltextSearchSection.tsx +624 -0
- package/src/modules/search/frontend/components/sections/GlobalSearchSection.tsx +124 -0
- package/src/modules/search/frontend/components/sections/VectorSearchSection.tsx +943 -0
- package/src/modules/search/frontend/index.ts +3 -0
- package/src/modules/search/frontend/utils.ts +82 -0
- package/src/modules/search/i18n/de.json +61 -0
- package/src/modules/search/i18n/en.json +72 -0
- package/src/modules/search/i18n/es.json +61 -0
- package/src/modules/search/i18n/pl.json +61 -0
- package/src/modules/search/index.ts +9 -0
- package/src/modules/search/lib/auto-indexing.ts +35 -0
- package/src/modules/search/lib/embedding-config.ts +161 -0
- package/src/modules/search/lib/global-search-config.ts +69 -0
- package/src/modules/search/lib/reindex-lock.ts +201 -0
- package/src/modules/search/subscribers/fulltext_upsert.ts +83 -0
- package/src/modules/search/subscribers/vector_delete.ts +75 -0
- package/src/modules/search/subscribers/vector_purge.ts +161 -0
- package/src/modules/search/subscribers/vector_upsert.ts +75 -0
- package/src/modules/search/workers/fulltext-index.worker.ts +318 -0
- package/src/modules/search/workers/vector-index.worker.ts +292 -0
- package/src/queue/fulltext-indexing.ts +87 -0
- package/src/queue/index.ts +2 -0
- package/src/queue/vector-indexing.ts +66 -0
- package/src/service.ts +397 -0
- package/src/strategies/fulltext.strategy.ts +155 -0
- package/src/strategies/index.ts +17 -0
- package/src/strategies/token.strategy.ts +153 -0
- package/src/strategies/vector.strategy.ts +234 -0
- package/src/types.ts +38 -0
- package/src/vector/drivers/chromadb/index.ts +49 -0
- package/src/vector/drivers/index.ts +4 -0
- package/src/vector/drivers/pgvector/index.ts +627 -0
- package/src/vector/drivers/qdrant/index.ts +49 -0
- package/src/vector/index.ts +3 -0
- package/src/vector/lib/vector-logs.ts +46 -0
- package/src/vector/services/checksum.ts +18 -0
- package/src/vector/services/embedding.ts +275 -0
- package/src/vector/services/index.ts +3 -0
- package/src/vector/services/vector-index.service.ts +1234 -0
- package/src/vector/types/pg.d.ts +1 -0
- package/src/vector/types.ts +220 -0
- package/tsconfig.json +9 -0
- package/watch.mjs +6 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare module 'pg';
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import type { EntityId } from '@open-mercato/shared/modules/entities'
|
|
2
|
+
import type {
|
|
3
|
+
VectorDriverId,
|
|
4
|
+
VectorIndexSource,
|
|
5
|
+
VectorModuleConfig,
|
|
6
|
+
VectorEntityConfig,
|
|
7
|
+
VectorLinkDescriptor,
|
|
8
|
+
VectorResultPresenter,
|
|
9
|
+
VectorSearchHit,
|
|
10
|
+
VectorQueryRequest,
|
|
11
|
+
VectorIndexEntry,
|
|
12
|
+
} from '@open-mercato/shared/modules/vector'
|
|
13
|
+
|
|
14
|
+
export type {
|
|
15
|
+
VectorDriverId,
|
|
16
|
+
VectorIndexSource,
|
|
17
|
+
VectorModuleConfig,
|
|
18
|
+
VectorEntityConfig,
|
|
19
|
+
VectorLinkDescriptor,
|
|
20
|
+
VectorResultPresenter,
|
|
21
|
+
VectorSearchHit,
|
|
22
|
+
VectorQueryRequest,
|
|
23
|
+
VectorIndexEntry,
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export type VectorDriverDocument = {
|
|
27
|
+
entityId: EntityId
|
|
28
|
+
recordId: string
|
|
29
|
+
tenantId: string
|
|
30
|
+
organizationId?: string | null
|
|
31
|
+
checksum: string
|
|
32
|
+
embedding: number[]
|
|
33
|
+
url?: string | null
|
|
34
|
+
presenter?: VectorResultPresenter | null
|
|
35
|
+
links?: VectorLinkDescriptor[] | null
|
|
36
|
+
payload?: Record<string, unknown> | null
|
|
37
|
+
driverId: VectorDriverId
|
|
38
|
+
resultTitle: string
|
|
39
|
+
resultSubtitle?: string | null
|
|
40
|
+
resultIcon?: string | null
|
|
41
|
+
resultBadge?: string | null
|
|
42
|
+
resultSnapshot?: string | null
|
|
43
|
+
primaryLinkHref?: string | null
|
|
44
|
+
primaryLinkLabel?: string | null
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export type VectorDriverQuery = {
|
|
48
|
+
vector: number[]
|
|
49
|
+
limit?: number
|
|
50
|
+
filter?: {
|
|
51
|
+
entityIds?: EntityId[]
|
|
52
|
+
organizationId?: string | null
|
|
53
|
+
tenantId: string
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export type VectorDriverQueryResult = {
|
|
58
|
+
entityId: EntityId
|
|
59
|
+
recordId: string
|
|
60
|
+
organizationId?: string | null
|
|
61
|
+
score: number
|
|
62
|
+
checksum: string
|
|
63
|
+
url?: string | null
|
|
64
|
+
presenter?: VectorResultPresenter | null
|
|
65
|
+
links?: VectorLinkDescriptor[] | null
|
|
66
|
+
payload?: Record<string, unknown> | null
|
|
67
|
+
resultTitle: string
|
|
68
|
+
resultSubtitle?: string | null
|
|
69
|
+
resultIcon?: string | null
|
|
70
|
+
resultBadge?: string | null
|
|
71
|
+
resultSnapshot?: string | null
|
|
72
|
+
primaryLinkHref?: string | null
|
|
73
|
+
primaryLinkLabel?: string | null
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export type VectorDriverListParams = {
|
|
77
|
+
tenantId: string
|
|
78
|
+
organizationId?: string | null
|
|
79
|
+
entityId?: EntityId
|
|
80
|
+
limit?: number
|
|
81
|
+
offset?: number
|
|
82
|
+
orderBy?: 'created' | 'updated'
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export type VectorDriverCountParams = {
|
|
86
|
+
tenantId: string
|
|
87
|
+
organizationId?: string | null
|
|
88
|
+
entityId?: EntityId
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export type VectorDriverRemoveOrphansParams = {
|
|
92
|
+
entityId: EntityId
|
|
93
|
+
tenantId?: string | null
|
|
94
|
+
organizationId?: string | null
|
|
95
|
+
olderThan: Date
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export interface VectorDriver {
|
|
99
|
+
readonly id: VectorDriverId
|
|
100
|
+
ensureReady(): Promise<void>
|
|
101
|
+
upsert(doc: VectorDriverDocument): Promise<void>
|
|
102
|
+
delete(entityId: EntityId, recordId: string, tenantId: string): Promise<void>
|
|
103
|
+
query(input: VectorDriverQuery): Promise<VectorDriverQueryResult[]>
|
|
104
|
+
getChecksum(entityId: EntityId, recordId: string, tenantId: string): Promise<string | null>
|
|
105
|
+
purge?(entityId: EntityId, tenantId: string): Promise<void>
|
|
106
|
+
list?(params: VectorDriverListParams): Promise<VectorIndexEntry[]>
|
|
107
|
+
count?(params: VectorDriverCountParams): Promise<number>
|
|
108
|
+
removeOrphans?(params: VectorDriverRemoveOrphansParams): Promise<number | void>
|
|
109
|
+
getTableDimension?(): Promise<number | null>
|
|
110
|
+
recreateWithDimension?(newDimension: number): Promise<void>
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// ============================================================================
|
|
114
|
+
// Embedding Provider Configuration Types
|
|
115
|
+
// ============================================================================
|
|
116
|
+
|
|
117
|
+
export type EmbeddingProviderId =
|
|
118
|
+
| 'openai'
|
|
119
|
+
| 'google'
|
|
120
|
+
| 'mistral'
|
|
121
|
+
| 'cohere'
|
|
122
|
+
| 'bedrock'
|
|
123
|
+
| 'ollama'
|
|
124
|
+
|
|
125
|
+
export type EmbeddingProviderConfig = {
|
|
126
|
+
providerId: EmbeddingProviderId
|
|
127
|
+
model: string
|
|
128
|
+
dimension: number
|
|
129
|
+
outputDimensionality?: number
|
|
130
|
+
baseUrl?: string
|
|
131
|
+
updatedAt: string
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export type EmbeddingModelInfo = {
|
|
135
|
+
id: string
|
|
136
|
+
name: string
|
|
137
|
+
dimension: number
|
|
138
|
+
configurableDimension?: boolean
|
|
139
|
+
minDimension?: number
|
|
140
|
+
maxDimension?: number
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export type EmbeddingProviderInfo = {
|
|
144
|
+
name: string
|
|
145
|
+
envKeyRequired: string
|
|
146
|
+
defaultModel: string
|
|
147
|
+
models: EmbeddingModelInfo[]
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export const EMBEDDING_PROVIDERS: Record<EmbeddingProviderId, EmbeddingProviderInfo> = {
|
|
151
|
+
openai: {
|
|
152
|
+
name: 'OpenAI',
|
|
153
|
+
envKeyRequired: 'OPENAI_API_KEY',
|
|
154
|
+
defaultModel: 'text-embedding-3-small',
|
|
155
|
+
models: [
|
|
156
|
+
{ id: 'text-embedding-3-small', name: 'text-embedding-3-small', dimension: 1536 },
|
|
157
|
+
{ id: 'text-embedding-3-large', name: 'text-embedding-3-large', dimension: 3072, configurableDimension: true, minDimension: 256, maxDimension: 3072 },
|
|
158
|
+
{ id: 'text-embedding-ada-002', name: 'text-embedding-ada-002', dimension: 1536 },
|
|
159
|
+
],
|
|
160
|
+
},
|
|
161
|
+
google: {
|
|
162
|
+
name: 'Google Generative AI',
|
|
163
|
+
envKeyRequired: 'GOOGLE_GENERATIVE_AI_API_KEY',
|
|
164
|
+
defaultModel: 'text-embedding-004',
|
|
165
|
+
models: [
|
|
166
|
+
{ id: 'text-embedding-004', name: 'text-embedding-004', dimension: 768, configurableDimension: true, minDimension: 1, maxDimension: 768 },
|
|
167
|
+
{ id: 'embedding-001', name: 'embedding-001', dimension: 768 },
|
|
168
|
+
],
|
|
169
|
+
},
|
|
170
|
+
mistral: {
|
|
171
|
+
name: 'Mistral',
|
|
172
|
+
envKeyRequired: 'MISTRAL_API_KEY',
|
|
173
|
+
defaultModel: 'mistral-embed',
|
|
174
|
+
models: [
|
|
175
|
+
{ id: 'mistral-embed', name: 'mistral-embed', dimension: 1024 },
|
|
176
|
+
],
|
|
177
|
+
},
|
|
178
|
+
cohere: {
|
|
179
|
+
name: 'Cohere',
|
|
180
|
+
envKeyRequired: 'COHERE_API_KEY',
|
|
181
|
+
defaultModel: 'embed-english-v3.0',
|
|
182
|
+
models: [
|
|
183
|
+
{ id: 'embed-english-v3.0', name: 'embed-english-v3.0', dimension: 1024 },
|
|
184
|
+
{ id: 'embed-multilingual-v3.0', name: 'embed-multilingual-v3.0', dimension: 1024 },
|
|
185
|
+
{ id: 'embed-english-light-v3.0', name: 'embed-english-light-v3.0', dimension: 384 },
|
|
186
|
+
{ id: 'embed-multilingual-light-v3.0', name: 'embed-multilingual-light-v3.0', dimension: 384 },
|
|
187
|
+
],
|
|
188
|
+
},
|
|
189
|
+
bedrock: {
|
|
190
|
+
name: 'Amazon Bedrock',
|
|
191
|
+
envKeyRequired: 'AWS_ACCESS_KEY_ID',
|
|
192
|
+
defaultModel: 'amazon.titan-embed-text-v2:0',
|
|
193
|
+
models: [
|
|
194
|
+
{ id: 'amazon.titan-embed-text-v2:0', name: 'Titan Embed Text v2', dimension: 1024, configurableDimension: true, minDimension: 256, maxDimension: 1024 },
|
|
195
|
+
{ id: 'amazon.titan-embed-text-v1', name: 'Titan Embed Text v1', dimension: 1536 },
|
|
196
|
+
{ id: 'cohere.embed-english-v3', name: 'Cohere Embed English v3', dimension: 1024 },
|
|
197
|
+
{ id: 'cohere.embed-multilingual-v3', name: 'Cohere Embed Multilingual v3', dimension: 1024 },
|
|
198
|
+
],
|
|
199
|
+
},
|
|
200
|
+
ollama: {
|
|
201
|
+
name: 'Ollama (Local)',
|
|
202
|
+
envKeyRequired: 'OLLAMA_BASE_URL',
|
|
203
|
+
defaultModel: 'nomic-embed-text',
|
|
204
|
+
models: [
|
|
205
|
+
{ id: 'nomic-embed-text', name: 'nomic-embed-text', dimension: 768 },
|
|
206
|
+
{ id: 'mxbai-embed-large', name: 'mxbai-embed-large', dimension: 1024 },
|
|
207
|
+
{ id: 'all-minilm', name: 'all-minilm', dimension: 384 },
|
|
208
|
+
{ id: 'snowflake-arctic-embed', name: 'snowflake-arctic-embed', dimension: 1024 },
|
|
209
|
+
],
|
|
210
|
+
},
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export const EMBEDDING_CONFIG_KEY = 'embedding_provider'
|
|
214
|
+
|
|
215
|
+
export const DEFAULT_EMBEDDING_CONFIG: EmbeddingProviderConfig = {
|
|
216
|
+
providerId: 'openai',
|
|
217
|
+
model: 'text-embedding-3-small',
|
|
218
|
+
dimension: 1536,
|
|
219
|
+
updatedAt: new Date().toISOString(),
|
|
220
|
+
}
|
package/tsconfig.json
ADDED