ba0ed169ce
- Added InvestorProcessor class for processing CSV data in batches and saving to SQL and vector databases. - Introduced QueryProcessor class for querying investor information from SQL and vector databases. - Integrated OpenAI's ChatGPT for structured output generation. - Implemented data cleaning and control character removal in CSV processing. - Added asynchronous processing capabilities for batch handling. - Established connection to ChromaDB for vector storage of investor descriptions. - Defined structured output schemas using Pydantic for investor data validation. - Enhanced settings management for API key and database configurations.
24 lines
725 B
Python
24 lines
725 B
Python
import datetime
|
|
|
|
from sqlalchemy import Column, DateTime, Integer, String
|
|
|
|
from db.db import Base
|
|
|
|
|
|
class InvestorTable(Base):
|
|
__tablename__ = "investors"
|
|
|
|
id = Column(Integer, primary_key=True, index=True)
|
|
name = Column(String, nullable=False)
|
|
aum = Column(Integer, nullable=False)
|
|
check_size = Column(String, nullable=False)
|
|
sector_focus = Column(String, nullable=False)
|
|
stage_focus = Column(String, nullable=False)
|
|
region = Column(String, nullable=False)
|
|
created_at = Column(DateTime, default=datetime.datetime.now(datetime.UTC))
|
|
updated_at = Column(
|
|
DateTime,
|
|
default=datetime.datetime.now(datetime.UTC),
|
|
onupdate=datetime.datetime.now(datetime.UTC),
|
|
)
|