MCPcopy
hub / github.com/PromtEngineer/localGPT / handle_create_index

Method handle_create_index

backend/server.py:801–840  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

799 self.send_json_response({'error': str(e)}, status_code=500)
800
801 def handle_create_index(self):
802 try:
803 content_length = int(self.headers['Content-Length'])
804 post_data = self.rfile.read(content_length)
805 data = json.loads(post_data.decode('utf-8'))
806 name = data.get('name')
807 description = data.get('description')
808 metadata = data.get('metadata', {})
809
810 if not name:
811 self.send_json_response({'error': 'Name required'}, status_code=400)
812 return
813
814 # Add complete metadata from RAG system configuration if available
815 if RAG_SYSTEM_AVAILABLE and PIPELINE_CONFIGS.get('default'):
816 default_config = PIPELINE_CONFIGS['default']
817 complete_metadata = {
818 'status': 'created',
819 'metadata_source': 'rag_system_config',
820 'created_at': json.loads(json.dumps(datetime.now().isoformat())),
821 'chunk_size': 512, # From default config
822 'chunk_overlap': 64, # From default config
823 'retrieval_mode': 'hybrid', # From default config
824 'window_size': 5, # From default config
825 'embedding_model': 'Qwen/Qwen3-Embedding-0.6B', # From default config
826 'enrich_model': 'qwen3:0.6b', # From default config
827 'overview_model': 'qwen3:0.6b', # From default config
828 'enable_enrich': True, # From default config
829 'latechunk': True, # From default config
830 'docling_chunk': True, # From default config
831 'note': 'Default configuration from RAG system'
832 }
833 # Merge with any provided metadata
834 complete_metadata.update(metadata)
835 metadata = complete_metadata
836
837 idx_id = db.create_index(name, description, metadata)
838 self.send_json_response({'index_id': idx_id}, status_code=201)
839 except Exception as e:
840 self.send_json_response({'error': str(e)}, status_code=500)
841
842 def handle_index_file_upload(self, index_id: str):
843 """Reuse file upload logic but store docs under index."""

Callers 1

do_POSTMethod · 0.95

Calls 3

send_json_responseMethod · 0.95
create_indexMethod · 0.80
updateMethod · 0.45

Tested by

no test coverage detected