| |
|
|
| export interface InitRequest { |
| model_name: string; |
| chunk_size: number; |
| chunk_overlap: number; |
| batch_size: number; |
| } |
|
|
| export interface DocumentRequest { |
| doc_id: string; |
| text: string; |
| } |
|
|
| export interface QueryRequest { |
| text: string; |
| top_k: number; |
| } |
|
|
| export interface CompareRequest { |
| text_a: string; |
| text_b: string; |
| } |
|
|
| export interface KeywordAnalysisRequest { |
| keyword: string; |
| top_k: number; |
| cluster_threshold: number; |
| } |
|
|
| export interface KeywordMatchRequest { |
| keyword: string; |
| candidate_meanings: string[]; |
| } |
|
|
| export interface BatchAnalysisRequest { |
| keywords: string[]; |
| top_k: number; |
| cluster_threshold: number; |
| compare_across: boolean; |
| } |
|
|
| |
|
|
| export interface ChunkPreview { |
| index: number; |
| text: string; |
| } |
|
|
| export interface InitResponse { |
| status: string; |
| model: string; |
| load_time_seconds: number; |
| } |
|
|
| export interface AddDocResponse { |
| status: string; |
| doc_id: string; |
| num_chunks: number; |
| chunks_preview: ChunkPreview[]; |
| } |
|
|
| export interface BuildIndexResponse { |
| status: string; |
| total_chunks: number; |
| embedding_dim: number; |
| build_time_seconds: number; |
| } |
|
|
| export interface QueryResultItem { |
| rank: number; |
| score: number; |
| doc_id: string; |
| chunk_index: number; |
| text: string; |
| } |
|
|
| export interface QueryResponse { |
| query: string; |
| results: QueryResultItem[]; |
| } |
|
|
| export interface CompareResponse { |
| text_a: string; |
| text_b: string; |
| similarity: number; |
| } |
|
|
| export interface ClusterContext { |
| doc_id: string; |
| chunk_index: number; |
| text: string; |
| highlight_positions: [number, number][]; |
| } |
|
|
| export interface SimilarPassage { |
| rank: number; |
| score: number; |
| doc_id: string; |
| text: string; |
| } |
|
|
| export interface MeaningCluster { |
| cluster_id: number; |
| size: number; |
| representative_text: string; |
| contexts: ClusterContext[]; |
| similar_passages: SimilarPassage[]; |
| } |
|
|
| export interface KeywordAnalysisResponse { |
| keyword: string; |
| total_occurrences: number; |
| meaning_clusters: MeaningCluster[]; |
| cross_keyword_similarities: Record<string, number>; |
| } |
|
|
| export interface MatchResult { |
| doc_id: string; |
| chunk_index: number; |
| text: string; |
| best_match: string; |
| best_score: number; |
| all_scores: Record<string, number>; |
| } |
|
|
| export interface MatchResponse { |
| keyword: string; |
| candidate_meanings: string[]; |
| matches: MatchResult[]; |
| } |
|
|
| export interface CorpusStats { |
| total_chunks: number; |
| total_documents: number; |
| document_ids: string[]; |
| index_built: boolean; |
| embedding_dim: number; |
| model_name: string; |
| } |
|
|
| export interface SimilarityDistribution { |
| sample_size: number; |
| mean: number; |
| std: number; |
| min: number; |
| max: number; |
| percentiles: Record<string, number>; |
| histogram: { bin_start: number; bin_end: number; count: number }[]; |
| } |
|
|
| export interface DisambiguationMetric { |
| keyword: string; |
| accuracy: number; |
| weighted_f1: number; |
| per_meaning_precision: Record<string, number>; |
| per_meaning_recall: Record<string, number>; |
| per_meaning_f1: Record<string, number>; |
| confusion_matrix: number[][]; |
| total_samples: number; |
| } |
|
|
| export interface RetrievalMetric { |
| query: string; |
| mrr: number; |
| precision_at_k: Record<string, number>; |
| recall_at_k: Record<string, number>; |
| ndcg_at_k: Record<string, number>; |
| avg_similarity: number; |
| top_score: number; |
| } |
|
|
| |
|
|
| export interface TrainResponse { |
| strategy: string; |
| model_path: string; |
| training_pairs: number; |
| epochs: number; |
| seconds: number; |
| keywords?: string[]; |
| } |
|
|
| export interface TrainEvalResponse { |
| pairs: { |
| text_a: string; |
| text_b: string; |
| expected: number; |
| base_score: number; |
| trained_score: number; |
| base_error: number; |
| trained_error: number; |
| }[]; |
| summary: { |
| avg_base_error: number; |
| avg_trained_error: number; |
| error_reduction_pct: number; |
| improved: number; |
| degraded: number; |
| total: number; |
| }; |
| } |
|
|
| |
|
|
| export interface W2VInitResponse { |
| vocab_size: number; |
| sentences: number; |
| vector_size: number; |
| seconds: number; |
| } |
|
|
| export interface W2VQueryResult { |
| rank: number; |
| score: number; |
| doc_id: string; |
| text: string; |
| } |
|
|
| export interface W2VSimilarWord { |
| word: string; |
| score: number; |
| } |
|
|
| |
|
|
| export interface DatasetSourceInfo { |
| dataset_id: string; |
| url: string; |
| description: string; |
| columns?: string[]; |
| size_mb?: number; |
| model?: string; |
| vector_dim?: number; |
| } |
|
|
| export interface DatasetInfo { |
| raw_texts: DatasetSourceInfo; |
| embeddings: DatasetSourceInfo; |
| } |
|
|
| export interface DatasetLoadRequest { |
| source: "raw" | "embeddings"; |
| max_docs: number; |
| min_text_length: number; |
| source_filter?: string; |
| build_index: boolean; |
| } |
|
|
| export interface DatasetLoadResponse { |
| documents_loaded?: number; |
| documents_skipped?: number; |
| documents_created?: number; |
| total_chunks?: number; |
| chunks_indexed?: number; |
| chromadb_vectors?: number; |
| index_built: boolean; |
| seconds: number; |
| source?: string; |
| } |
|
|
| export interface DatasetPreviewDoc { |
| doc_id: string; |
| filename: string; |
| text_preview: string; |
| text_length: number; |
| } |
|
|
| export interface DatasetPreviewResponse { |
| count: number; |
| documents: DatasetPreviewDoc[]; |
| } |
|
|
| |
|
|
| export interface ContextAssociatedWord { |
| word: string; |
| score: number; |
| } |
|
|
| export interface ContextExample { |
| doc_id: string; |
| snippet: string; |
| } |
|
|
| export interface ContextMeaning { |
| cluster_id: number; |
| occurrences: number; |
| confidence: number; |
| associated_words: ContextAssociatedWord[]; |
| example_contexts: ContextExample[]; |
| } |
|
|
| export interface ContextAnalysisResponse { |
| keyword: string; |
| total_occurrences: number; |
| meanings: ContextMeaning[]; |
| } |
|
|
| |
|
|
| export type EvalSection = "distribution" | "disambiguation" | "retrieval"; |
|
|