repo นี้มีโค้ดสำหรับดัชนี BitFunnel ที่ใช้โดยดัชนี super-fresh, news และ media ของ Bing อัลกอริทึมอธิบายไว้ใน BitFunnel: Revisiting Signatures for Search ซึ่งเป็นบทความที่นำเสนอที่ SIGIR 2017 วิดีโอนี้ให้ภาพรวมที่ดีของอัลกอริทึม
codebase ที่นี่ได้รับการเผยแพร่เพื่อให้ชุมชนการวิจัยสามารถทำซ้ำผลลัพธ์จากรายงาน SIGIR เอกสารประกอบค่อนข้างบาง แต่เราขอแนะนำให้คุณดูสิ่งต่อไปนี้:
ในการสร้าง BitFunnel คุณจะต้องมี CMake (2.8.11+) และคอมไพเลอร์ C++ สมัยใหม่ (gcc 5+, clang 3.5+ หรือ VC 2015+) คุณสามารถเรียกใช้ CMake ได้โดยตรงเพื่อสร้างการตั้งค่าบิลด์ที่เหมาะสมสำหรับแพลตฟอร์มของคุณ เรามีสคริปต์บางตัวที่มีค่าเริ่มต้นที่เราใช้อยู่
สำหรับแพลตฟอร์ม *nix (รวมถึง OS X)
./Configure_Make.sh
cd build-make
make
make test
โปรดทราบว่าแม้ว่าคำแนะนำเหล่านี้มีไว้สำหรับการสร้าง make
คุณสามารถสร้างโดยใช้ ninja
ได้ด้วยการเปลี่ยนคำสั่ง cmake
เพื่อสร้างไฟล์ ninja
แทน Makefiles
คำแนะนำเหล่านี้ไม่ได้ระบุไว้ในคำแนะนำ เนื่องจาก ninja
จำเป็นต้องติดตั้งการพึ่งพาเพิ่มเติมสำหรับนักพัฒนาบางราย แต่ถ้าคุณต้องการใช้ ninja
ก็สามารถใช้งานได้ผ่าน apt-get
, brew
ฯลฯ และเร็วกว่า make
อย่างแน่นอน
หากคุณใช้ Ubuntu 15+ คุณสามารถติดตั้งการอ้างอิงด้วย:
sudo apt-get install clang cmake
บน Ubuntu 14 และต่ำกว่า คุณจะต้องติดตั้ง CMake เวอร์ชันใหม่กว่า หากต้องการติดตั้ง CMake ใหม่พอ โปรดดูลิงก์นี้ หากคุณใช้ gcc คุณจะต้องตรวจสอบให้แน่ใจว่าคุณมี gcc-5 ( sudo apt-get install g++-5
)
หากต้องการแทนที่คอมไพเลอร์เริ่มต้น ให้ตั้งค่าตัวแปรสภาพแวดล้อม CXX
และ CC
ตัวอย่างเช่น หากคุณติดตั้ง clang-3.8 เป็น clang-3.8
และใช้ bash:
export CXX="clang++-3.8"
export CC="clang-3.8"
ติดตั้ง XCode จากนั้นรันคำสั่งต่อไปนี้เพื่อติดตั้งแพ็คเกจที่จำเป็นโดยใช้ Homebrew (http://brew.sh/):
brew install cmake
BitFunnel สามารถสร้างได้บน OS X โดยใช้ *nix makefiles หรือ XCode มาตรฐาน เพื่อสร้างและสร้าง makefiles ในไดเร็กทอรีราก BitFunnel
ให้รัน:
หากคุณต้องการสร้างโปรเจ็กต์ Xcode แทนที่จะใช้ Makefiles ให้รัน:
./Configure_XCode.sh
หากคุณใช้ XCode คุณจะต้องเรียกใช้ Configure_XCode
อีกครั้งหรือเรียกใช้เป้าหมาย ZERO_CHECK
เมื่อ CMakeLists
เปลี่ยนแปลง เช่น เมื่อมีการเพิ่มหรือลบไฟล์ต้นฉบับ
คุณจะต้องมีเครื่องมือเหล่านี้:
หมายเหตุ : หากคุณติดตั้ง Visual Studio เป็นครั้งแรกและเลือกตัวเลือกการติดตั้งเริ่มต้น คุณจะไม่ได้รับคอมไพเลอร์ C++ หากต้องการบังคับติดตั้งคอมไพเลอร์ C++ คุณต้องสร้างโปรเจ็กต์ C++ ใหม่หรือเปิดโปรเจ็กต์ C++ ที่มีอยู่
โคลนที่เก็บ BitFunnel จากนั้นรันคำสั่งต่อไปนี้ในโฟลเดอร์รูทของ BitFunnel:
.Configure_MSVC.bat
หมายเหตุ : คุณจะต้องแก้ไขตัวเลือก CMake -G หากคุณใช้ Visual Studio เวอร์ชันอื่น Bitfunnel ต้องสร้างเป็นโปรแกรม 64 บิต ดังนั้น 'Win64' จะต้องเป็นส่วนหนึ่งของข้อความตัวเลือก G ที่ระบุ
ณ จุดนี้ คุณสามารถเปิดโซลูชันที่สร้างขึ้น BitFunnel_CMake.sln
จาก Visual Studio แล้วสร้างได้ หรือคุณสามารถสร้างจากบรรทัดคำสั่งโดยใช้ cmake --build build-MSVC