소개
RAG(검색 증강 생성) 애플리케이션으로 재미있는 프로젝트를 구축할 때 탐색 제한과 같은 제한에 직면하는 경우가 많으며, 이로 인해 최신 정보나 날씨 업데이트와 같은 현재 데이터를 얻기가 어렵습니다(좀 더 재미있는 것이 있으면 좋겠습니다). 이 문제를 해결하기 위해 RAG 애플리케이션에 인터넷 검색 도구를 장착할 수 있습니다. 뛰어들어 보세요!
우리의 도구 벤치
- LangChain(대규모 언어 모델을 사용하여 애플리케이션을 구축하기 위한 프레임워크)
- SearXNG(무료 메타 검색 엔진)
- CPython(C 언어 래퍼 :> )
- 도커(시원한 빵을 든 남자)
설정
먼저 SearXNG 설치부터 시작합니다.
1 -) SearXNG-docker 받기
git clone https://github.com/searxng/searxng-docker.git
2 -) .env 파일을 편집하여 호스트 이름과 이메일을 설정하세요
3 -) 비밀키 생성
<linux> sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml <macos> sed -i"" -e "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml <windows> $randomBytes = New-Object byte[] 32 (New-Object Security.Cryptography.RNGCryptoServiceProvider).GetBytes($randomBytes) $secretKey = -join ($randomBytes | ForEach-Object { "{0:x2}" -f $_ }) (Get-Content searxng/settings.yml) -replace 'ultrasecretkey', $secretKey | Set-Content searxng/settings.yml </windows></macos></linux>
4 -) searxng/settings.yml을 업데이트하여 사용 가능한 검색 형식을 활성화하고 LangChain 인스턴스에 대한 제한기를 비활성화합니다.
use_default_settings: true server: # base_url is defined in the SEARXNG_BASE_URL environment variable, see .env and docker-compose.yml secret_key: "<secret-key>" # change this! limiter: false image_proxy: true ui: static_use_hash: true redis: url: redis://redis:6379/0 search: formats: - html - json </secret-key>
5-) SearXNG 인스턴스 실행
도커 컴포지트업
Docker에서 SearXNG 배포를 확인하세요. 모든 것이 좋아 보인다면 계속할 준비가 된 것입니다.
데모 애플리케이션
1 -) 가상 환경 생성 및 활성화
python3 -m venv .venv source .venv/bin/activate
2 -) 랭체인 설치
pip install langchain langchain-community
3 -) main.py 생성
## Simple Get Results from langchain_community.utilities import SearxSearchWrapper import pprint s = SearxSearchWrapper(searx_host="http://localhost:8080",) result = s.results("What is RAG?", num_results=10, engines=["google"]) pprint.pprint(result) ## Github Tool from langchain_community.tools.searx_search.tool import SearxSearchResults wrapper = SearxSearchWrapper(searx_host="**") github_tool = SearxSearchResults(name="Github", wrapper=wrapper, kwargs = { "engines": ["github"], })
그리고 거기에 있습니다! 이제 RAG 애플리케이션에 검색 기능이 있습니다. 이 가이드에서는 새로운 내용을 소개하지 않지만 RAG 애플리케이션에 웹 검색 기능을 추가하는 단계를 통합하는 것을 목표로 합니다. 도움이 되었으면 좋겠습니다!
위 내용은 웹 검색 기능으로 RAG 애플리케이션을 강화하세요!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

forhandlinglargedatasetsinpython, usenumpyarraysforbetterperformance.1) numpyarraysarememory-effic andfasterfornumericaloperations.2) leveragevectorization foredtimecomplexity.4) managemoryusage withorfications data

inpython, listsusedyammoryAllocation과 함께 할당하고, whilempyarraysallocatefixedMemory.1) listsAllocatemememorythanneedInitiality.

Inpython, youcansspecthedatatypeyfelemeremodelerernspant.1) usenpynernrump.1) usenpynerp.dloatp.ploatm64, 포모 선례 전분자.

numpyissentialfornumericalcomputinginpythonduetoitsspeed, memory-efficiency 및 comperniveMathematicaticaltions

contiguousUousUousUlorAllocationScrucialForraysbecauseItAllowsOfficationAndFastElementAccess.1) ItenableSconstantTimeAccess, o (1), DuetodirectAddressCalculation.2) Itimprovesceeffiency theMultipleementFetchespercacheline.3) Itsimplififiesmomorym

slicepaythonlistisdoneusingthesyntaxlist [start : step : step] .here'showitworks : 1) startistheindexofthefirstelementtoinclude.2) stopistheindexofthefirstelemement.3) stepisincrementbetwetweentractionsoftortionsoflists

NumpyAllowsForVariousOperationsOnArrays : 1) BasicArithmeticLikeadDition, Subtraction, A 및 Division; 2) AdvancedOperationsSuchasmatrixmultiplication; 3) extrayintondsfordatamanipulation; 5) Ag

Arraysinpython, 특히 Stroughnumpyandpandas, areestentialfordataanalysis, setingspeedandefficiency


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

WebStorm Mac 버전
유용한 JavaScript 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

Dreamweaver Mac版
시각적 웹 개발 도구
