feat(03-02): add search and embeddings Tier 3 providers
- Perplexity (pplx- prefix, high confidence) - You.com (keyword-only) - Voyage AI (pa- prefix, medium confidence) - Jina AI (jina_ prefix, high confidence) - Unstructured.io (keyword-only) - AssemblyAI (hex32, low confidence)
This commit is contained in:
21
pkg/providers/definitions/assemblyai.yaml
Normal file
21
pkg/providers/definitions/assemblyai.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: assemblyai
|
||||
display_name: AssemblyAI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "assemblyai"
|
||||
- "ASSEMBLYAI_API_KEY"
|
||||
- "api.assemblyai.com"
|
||||
- "assembly.ai"
|
||||
patterns:
|
||||
- regex: '[a-f0-9]{32}'
|
||||
entropy_min: 4.0
|
||||
confidence: low
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.assemblyai.com/v2/transcript
|
||||
headers:
|
||||
authorization: "{KEY}"
|
||||
valid_status: [200]
|
||||
invalid_status: [401, 403]
|
||||
21
pkg/providers/definitions/jina.yaml
Normal file
21
pkg/providers/definitions/jina.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: jina
|
||||
display_name: Jina AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "jina"
|
||||
- "JINA_API_KEY"
|
||||
- "api.jina.ai"
|
||||
- "jinaai"
|
||||
patterns:
|
||||
- regex: 'jina_[A-Za-z0-9]{40,}'
|
||||
entropy_min: 4.0
|
||||
confidence: high
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.jina.ai/v1/models
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200]
|
||||
invalid_status: [401, 403]
|
||||
21
pkg/providers/definitions/perplexity.yaml
Normal file
21
pkg/providers/definitions/perplexity.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: perplexity
|
||||
display_name: Perplexity AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "perplexity"
|
||||
- "PERPLEXITY_API_KEY"
|
||||
- "pplx-"
|
||||
- "api.perplexity.ai"
|
||||
patterns:
|
||||
- regex: 'pplx-[A-Za-z0-9]{48,}'
|
||||
entropy_min: 4.0
|
||||
confidence: high
|
||||
verify:
|
||||
method: POST
|
||||
url: https://api.perplexity.ai/chat/completions
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
17
pkg/providers/definitions/unstructured.yaml
Normal file
17
pkg/providers/definitions/unstructured.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
format_version: 1
|
||||
name: unstructured
|
||||
display_name: Unstructured.io
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "unstructured"
|
||||
- "UNSTRUCTURED_API_KEY"
|
||||
- "api.unstructured.io"
|
||||
- "unstructuredio"
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.unstructured.io/general/v0/general
|
||||
headers:
|
||||
unstructured-api-key: "{KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
21
pkg/providers/definitions/voyage.yaml
Normal file
21
pkg/providers/definitions/voyage.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: voyage
|
||||
display_name: Voyage AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "voyage"
|
||||
- "VOYAGE_API_KEY"
|
||||
- "voyageai"
|
||||
- "api.voyageai.com"
|
||||
patterns:
|
||||
- regex: 'pa-[A-Za-z0-9_\-]{40,}'
|
||||
entropy_min: 4.0
|
||||
confidence: medium
|
||||
verify:
|
||||
method: POST
|
||||
url: https://api.voyageai.com/v1/embeddings
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
17
pkg/providers/definitions/you.yaml
Normal file
17
pkg/providers/definitions/you.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
format_version: 1
|
||||
name: you
|
||||
display_name: You.com
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "you.com"
|
||||
- "YDC_API_KEY"
|
||||
- "YOU_API_KEY"
|
||||
- "api.ydc-index.io"
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.ydc-index.io/search
|
||||
headers:
|
||||
X-API-Key: "{KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
21
providers/assemblyai.yaml
Normal file
21
providers/assemblyai.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: assemblyai
|
||||
display_name: AssemblyAI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "assemblyai"
|
||||
- "ASSEMBLYAI_API_KEY"
|
||||
- "api.assemblyai.com"
|
||||
- "assembly.ai"
|
||||
patterns:
|
||||
- regex: '[a-f0-9]{32}'
|
||||
entropy_min: 4.0
|
||||
confidence: low
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.assemblyai.com/v2/transcript
|
||||
headers:
|
||||
authorization: "{KEY}"
|
||||
valid_status: [200]
|
||||
invalid_status: [401, 403]
|
||||
21
providers/jina.yaml
Normal file
21
providers/jina.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: jina
|
||||
display_name: Jina AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "jina"
|
||||
- "JINA_API_KEY"
|
||||
- "api.jina.ai"
|
||||
- "jinaai"
|
||||
patterns:
|
||||
- regex: 'jina_[A-Za-z0-9]{40,}'
|
||||
entropy_min: 4.0
|
||||
confidence: high
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.jina.ai/v1/models
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200]
|
||||
invalid_status: [401, 403]
|
||||
21
providers/perplexity.yaml
Normal file
21
providers/perplexity.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: perplexity
|
||||
display_name: Perplexity AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "perplexity"
|
||||
- "PERPLEXITY_API_KEY"
|
||||
- "pplx-"
|
||||
- "api.perplexity.ai"
|
||||
patterns:
|
||||
- regex: 'pplx-[A-Za-z0-9]{48,}'
|
||||
entropy_min: 4.0
|
||||
confidence: high
|
||||
verify:
|
||||
method: POST
|
||||
url: https://api.perplexity.ai/chat/completions
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
17
providers/unstructured.yaml
Normal file
17
providers/unstructured.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
format_version: 1
|
||||
name: unstructured
|
||||
display_name: Unstructured.io
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "unstructured"
|
||||
- "UNSTRUCTURED_API_KEY"
|
||||
- "api.unstructured.io"
|
||||
- "unstructuredio"
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.unstructured.io/general/v0/general
|
||||
headers:
|
||||
unstructured-api-key: "{KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
21
providers/voyage.yaml
Normal file
21
providers/voyage.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
format_version: 1
|
||||
name: voyage
|
||||
display_name: Voyage AI
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "voyage"
|
||||
- "VOYAGE_API_KEY"
|
||||
- "voyageai"
|
||||
- "api.voyageai.com"
|
||||
patterns:
|
||||
- regex: 'pa-[A-Za-z0-9_\-]{40,}'
|
||||
entropy_min: 4.0
|
||||
confidence: medium
|
||||
verify:
|
||||
method: POST
|
||||
url: https://api.voyageai.com/v1/embeddings
|
||||
headers:
|
||||
Authorization: "Bearer {KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
17
providers/you.yaml
Normal file
17
providers/you.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
format_version: 1
|
||||
name: you
|
||||
display_name: You.com
|
||||
tier: 3
|
||||
last_verified: "2026-04-05"
|
||||
keywords:
|
||||
- "you.com"
|
||||
- "YDC_API_KEY"
|
||||
- "YOU_API_KEY"
|
||||
- "api.ydc-index.io"
|
||||
verify:
|
||||
method: GET
|
||||
url: https://api.ydc-index.io/search
|
||||
headers:
|
||||
X-API-Key: "{KEY}"
|
||||
valid_status: [200, 400]
|
||||
invalid_status: [401, 403]
|
||||
Reference in New Issue
Block a user