| 345 | |
| 346 | |
| 347 | class Embedding(models.Model): |
| 348 | id = models.CharField(max_length=128, primary_key=True, verbose_name="主键id") |
| 349 | source_id = models.CharField(max_length=128, verbose_name="资源id", db_index=True) |
| 350 | source_type = models.CharField( |
| 351 | verbose_name="资源类型", max_length=5, choices=SourceType.choices, default=SourceType.PROBLEM, db_index=True |
| 352 | ) |
| 353 | is_active = models.BooleanField(verbose_name="是否可用", max_length=1, default=True) |
| 354 | knowledge = models.ForeignKey(Knowledge, on_delete=models.DO_NOTHING, verbose_name="文档关联", db_constraint=False) |
| 355 | document = models.ForeignKey(Document, on_delete=models.DO_NOTHING, verbose_name="文档关联", db_constraint=False) |
| 356 | paragraph = models.ForeignKey(Paragraph, on_delete=models.DO_NOTHING, verbose_name="段落关联", db_constraint=False) |
| 357 | embedding = VectorField(verbose_name="向量") |
| 358 | search_vector = SearchVectorField(verbose_name="分词", default="") |
| 359 | meta = models.JSONField(verbose_name="元数据", default=dict) |
| 360 | |
| 361 | class Meta: |
| 362 | db_table = "embedding" |
| 363 | |
| 364 | |
| 365 | class File(AppModelMixin): |
no test coverage detected