shri-jai commited on
Commit
cbbf969
·
1 Parent(s): f48bf02

chore: image_url to kb

Browse files
alembic/versions/f6a1d6fc82d0_add_image_url_column_to_kb.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """add: image url column to kb
2
+
3
+ Revision ID: f6a1d6fc82d0
4
+ Revises: 1cbb7317540a
5
+ Create Date: 2025-12-01 16:55:06.113217
6
+
7
+ """
8
+ from typing import Sequence, Union
9
+
10
+ from alembic import op
11
+ import sqlalchemy as sa
12
+ import sqlmodel.sql.sqltypes
13
+
14
+
15
+ # revision identifiers, used by Alembic.
16
+ revision: str = 'f6a1d6fc82d0'
17
+ down_revision: Union[str, Sequence[str], None] = '1cbb7317540a'
18
+ branch_labels: Union[str, Sequence[str], None] = None
19
+ depends_on: Union[str, Sequence[str], None] = None
20
+
21
+
22
+ def upgrade() -> None:
23
+ """Upgrade schema."""
24
+ # ### commands auto generated by Alembic - please adjust! ###
25
+ op.add_column('knowledge_chunk', sa.Column('image_url', sqlmodel.sql.sqltypes.AutoString(), nullable=True))
26
+ # ### end Alembic commands ###
27
+
28
+
29
+ def downgrade() -> None:
30
+ """Downgrade schema."""
31
+ # ### commands auto generated by Alembic - please adjust! ###
32
+ op.drop_column('knowledge_chunk', 'image_url')
33
+ # ### end Alembic commands ###
src/chatbot/models.py CHANGED
@@ -31,5 +31,6 @@ class KnowledgeChunk(SQLModel, table=True):
31
  )
32
  chunk_index: int
33
  chunk_text: str
 
34
  embedding: List[float] = Field(sa_column=Column(Vector(768)))
35
  knowledge_base: "KnowledgeBase" = Relationship(back_populates="knowledge_chunk")
 
31
  )
32
  chunk_index: int
33
  chunk_text: str
34
+ image_url: str | None = Field(default=None)
35
  embedding: List[float] = Field(sa_column=Column(Vector(768)))
36
  knowledge_base: "KnowledgeBase" = Relationship(back_populates="knowledge_chunk")
src/chatbot/router.py CHANGED
@@ -57,7 +57,7 @@ async def semantic_search(
57
 
58
  sql = text(
59
  """
60
- SELECT id, kb_id, chunk_text,
61
  embedding <#> :query_vec AS score
62
  FROM knowledge_chunk
63
  ORDER BY embedding <#> :query_vec ASC
@@ -75,6 +75,7 @@ async def semantic_search(
75
  chunk_id=str(r.id),
76
  kb_id=str(r.kb_id),
77
  text=r.chunk_text,
 
78
  score=float(r.score),
79
  )
80
  for r in rows
 
57
 
58
  sql = text(
59
  """
60
+ SELECT id, kb_id, chunk_text,image_url,
61
  embedding <#> :query_vec AS score
62
  FROM knowledge_chunk
63
  ORDER BY embedding <#> :query_vec ASC
 
75
  chunk_id=str(r.id),
76
  kb_id=str(r.kb_id),
77
  text=r.chunk_text,
78
+ image_url=r.image_url,
79
  score=float(r.score),
80
  )
81
  for r in rows
src/chatbot/schemas.py CHANGED
@@ -33,6 +33,7 @@ class SemanticSearchResult(BaseModel):
33
  chunk_id: str
34
  kb_id: str
35
  text: str
 
36
  score: float
37
 
38
  class ManualTextRequest(BaseModel):
 
33
  chunk_id: str
34
  kb_id: str
35
  text: str
36
+ image_url: str | None = None
37
  score: float
38
 
39
  class ManualTextRequest(BaseModel):