Conversation
…ursive field extraction
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#️⃣ Issue Number
📝 요약(Summary)
KeywordRetriever를 구현했습니다.가능합니다.
SequentialFlow(steps=[retriever]).run_query("...")가 동작하는 end-to-end경로를 완성했습니다.
💬 To Reviewers (선택)
_bm25.py의_extract_text함수가meta.tags: ["finance", "core"]같은중첩 리스트를 재귀적으로 풀어내는 방식이 적절한지 확인 부탁드립니다.
KeywordRetriever의index_fields파라미터가 기본값을 교체(override)하는 방식으로 설계되었습니다. 기본값에 추가(extend) 하는 방식이 더 나을지
의견 부탁드립니다.
src/lang2sql/core/ports.py의EmbeddingPort는 향후VectorRetriever구현을 위한 placeholder입니다. 위치나 네이밍에 이견이 있으면 말씀해주세요.
PR Checklist
KeywordRetriever14개 단위 테스트 추가(
tests/test_components_keyword_retriever.py)BaseComponent상속으로 hook 트레이싱 자동 적용 검증 (start/end/error이벤트)
SequentialFlowend-to-end 통합 테스트 포함math,collections만 사용)Changes
src/lang2sql/core/ports.pyEmbeddingPortProtocol placeholder 추가src/lang2sql/components/__init__.pysrc/lang2sql/components/retrieval/_bm25.pysrc/lang2sql/components/retrieval/keyword.pyKeywordRetriever컴포넌트 구현src/lang2sql/components/retrieval/__init__.pyKeywordRetrieverpublic exporttests/test_components_keyword_retriever.py