From 0aeab54c2f5f157536f80415acb06cb65f91fde2 Mon Sep 17 00:00:00 2001 From: Yuan <45984206+Yuan325@users.noreply.github.com> Date: Wed, 13 Dec 2023 02:34:41 +0800 Subject: [PATCH] feat: add integration test for postgres (#123) --- .../datastore/providers/postgres_test.py | 545 +++- .../datastore/providers/test_data.py | 2312 +++++++++++++++++ .../datastore/providers/utils.py | 22 + 3 files changed, 2764 insertions(+), 115 deletions(-) create mode 100644 retrieval_service/datastore/providers/test_data.py create mode 100644 retrieval_service/datastore/providers/utils.py diff --git a/retrieval_service/datastore/providers/postgres_test.py b/retrieval_service/datastore/providers/postgres_test.py index 458bda11..04be7428 100644 --- a/retrieval_service/datastore/providers/postgres_test.py +++ b/retrieval_service/datastore/providers/postgres_test.py @@ -12,144 +12,459 @@ # See the License for the specific language governing permissions and # limitations under the License. -from collections import OrderedDict -from typing import Dict, cast +from datetime import datetime +from ipaddress import IPv4Address +from typing import Any, AsyncGenerator, List -import asyncpg import pytest +import pytest_asyncio import models +from .. import datastore from . import postgres +from .test_data import query_embedding1, query_embedding2, query_embedding3 +from .utils import get_env_var +pytestmark = pytest.mark.asyncio(scope="module") -class MockRecord(OrderedDict): - """ - MockRecord allows us to initialize asyncpg Record objects directly. - """ - def __getitem__(self, key_or_index): - if isinstance(key_or_index, int): - return list(self.values())[key_or_index] +@pytest.fixture(scope="module") +def db_user() -> str: + return get_env_var("DB_USER", "name of a postgres user") - return super().__getitem__(key_or_index) +@pytest.fixture(scope="module") +def db_pass() -> str: + return get_env_var("DB_PASS", "password for the postgres user") -class MockAsyncpgPool(asyncpg.Pool): - def __init__(self, mocks: Dict[str, MockRecord]): - self.mocks = mocks - async def fetch(self, query, *args, timeout=None): - query = " ".join(q.strip() for q in query.splitlines()).strip() - return self.mocks.get(query) +@pytest.fixture(scope="module") +def db_name() -> str: + return get_env_var("DB_NAME", "name of a postgres database") - async def fetchrow(self, query, *args, timeout=None): - query = " ".join(q.strip() for q in query.splitlines()).strip() - return self.mocks.get(query) +@pytest.fixture(scope="module") +def db_host() -> str: + return get_env_var("DB_HOST", "ip address of a postgres database") -async def mock_postgres_provider(mocks: Dict[str, MockRecord]) -> postgres.Client: - mockPool = cast(asyncpg.Pool, MockAsyncpgPool(mocks)) - mockCl = postgres.Client(mockPool) - return mockCl - -@pytest.mark.asyncio -async def test_get_airport(): - mockRecord = MockRecord( - [ - ("id", 1), - ("iata", "FOO"), - ("name", "Foo Bar"), - ("city", "baz"), - ("country", "bundy"), - ] +@pytest_asyncio.fixture(scope="module") +async def ds( + db_user: str, db_pass: str, db_name: str, db_host: str +) -> AsyncGenerator[datastore.Client, None]: + cfg = postgres.Config( + kind="postgres", + user=db_user, + password=db_pass, + database=db_name, + host=IPv4Address(db_host), ) - query = "SELECT * FROM airports WHERE id=$1" - mocks = {query: mockRecord} - mockCl = await mock_postgres_provider(mocks) - res = await mockCl.get_airport_by_id(1) - expected_res = models.Airport( + ds = await datastore.create(cfg) + if ds is None: + raise TypeError("datastore creation failure") + yield ds + print("after yield") + await ds.close() + print("closed database") + + +async def test_get_airport_by_id(ds: postgres.Client): + res = await ds.get_airport_by_id(1) + expected = models.Airport( id=1, - iata="FOO", - name="Foo Bar", - city="baz", - country="bundy", + iata="MAG", + name="Madang Airport", + city="Madang", + country="Papua New Guinea", ) - assert res == expected_res + assert res == expected -@pytest.mark.asyncio -async def test_get_amenity(): - mockRecord = MockRecord( +@pytest.mark.parametrize( + "iata", + [ + pytest.param("SFO", id="upper_case"), + pytest.param("sfo", id="lower_case"), + ], +) +async def test_get_airport_by_iata(ds: postgres.Client, iata: str): + res = await ds.get_airport_by_iata(iata) + expected = models.Airport( + id=3270, + iata="SFO", + name="San Francisco International Airport", + city="San Francisco", + country="United States", + ) + assert res == expected + + +search_airports_test_data = [ + pytest.param( + "Philippines", + "San jose", + None, + [ + models.Airport( + id=2299, + iata="SJI", + name="San Jose Airport", + city="San Jose", + country="Philippines", + ), + models.Airport( + id=2313, + iata="EUQ", + name="Evelio Javier Airport", + city="San Jose", + country="Philippines", + ), + ], + id="country_and_city_only", + ), + pytest.param( + "united states", + "san francisco", + None, [ - ("id", 1), - ("name", "FOO"), - ("description", "Foo Bar"), - ("location", "baz"), - ("terminal", "bundy"), - ("category", "baz bundy"), - ("hour", "foo bar buz bundy"), - ] + models.Airport( + id=3270, + iata="SFO", + name="San Francisco International Airport", + city="San Francisco", + country="United States", + ) + ], + id="country_and_name_only", + ), + pytest.param( + None, + "San Jose", + "San Jose", + [ + models.Airport( + id=2299, + iata="SJI", + name="San Jose Airport", + city="San Jose", + country="Philippines", + ), + models.Airport( + id=3548, + iata="SJC", + name="Norman Y. Mineta San Jose International Airport", + city="San Jose", + country="United States", + ), + ], + id="city_and_name_only", + ), + pytest.param( + "Foo", + "FOO BAR", + "Foo bar", + [], + id="no_results", + ), +] + + +@pytest.mark.parametrize("country, city, name, expected", search_airports_test_data) +async def test_search_airports( + ds: postgres.Client, + country: str, + city: str, + name: str, + expected: List[models.Airport], +): + res = await ds.search_airports(country, city, name) + assert res == expected + + +async def test_get_amenity(ds: postgres.Client): + res = await ds.get_amenity(1) + expected = models.Amenity( + id=1, + name="24th & Mission Taco House", + description="Fresh made-to-order Mexican entrees with beer & wine", + location="Marketplace G (near entrance to G Gates)", + terminal="Ed Lee International Main Hall", + category="restaurant", + hour="Sunday- Saturday 7:00 am-8:00 pm", ) - query = """ - SELECT id, name, description, location, terminal, category, hour - FROM amenities WHERE id=$1 - """ - query = " ".join(q.strip() for q in query.splitlines()).strip() - mocks = {query: mockRecord} - mockCl = await mock_postgres_provider(mocks) - res = await mockCl.get_amenity(1) - expected_res = models.Amenity( + assert res == expected + + +amenities_search_test_data = [ + pytest.param( + # "Where can I get coffee near gate A6?" + query_embedding1, + 0.7, + 1, + [ + models.Amenity( + id=27, + name="Green Beans Coffee", + description="A third wave coffee concept serving handcrafted coffee creations exclusively for travelers in airports across America. For over 25 years Green Beans Coffee has been roasted in the USA, and loved around with world.", + location="near the entrance to G Gates", + terminal="Ed Lee International Main Hall", + category="restaurant", + hour="Sunday- Saturday 4:00 am-11:00 pm", + content=None, + embedding=None, + ), + ], + id="search_coffee_shop", + ), + pytest.param( + # "Where can I look for luxury goods?" + query_embedding2, + 0.7, + 2, + [ + models.Amenity( + id=100, + name="Gucci", + description="Luxury apparel, handbags and accessories-duty free", + location="Gates, near Gate G2", + terminal="International Terminal G", + category="shop", + hour="Sunday - Saturday 7:00 am-11:00 pm", + content=None, + embedding=None, + ), + models.Amenity( + id=84, + name="Coach", + description="Luxury handbags, accessories and clothing—duty free.", + location="Between Gates A5 and A9", + terminal="International Terminal A", + category="shop", + hour="Sunday - Saturday 9:00 am-11:00 pm", + content=None, + embedding=None, + ), + ], + id="search_luxury_goods", + ), + pytest.param( + # "FOO BAR" + query_embedding3, + 0.9, + 1, + [], + id="no_results", + ), +] + + +@pytest.mark.parametrize( + "query_embedding, similarity_threshold, top_k, expected", amenities_search_test_data +) +async def test_amenities_search( + ds: postgres.Client, + query_embedding: List[float], + similarity_threshold: float, + top_k: int, + expected: List[models.Amenity], +): + res = await ds.amenities_search(query_embedding, similarity_threshold, top_k) + assert res == expected + + +async def test_get_flight(ds: postgres.Client): + res = await ds.get_flight(1) + expected = models.Flight( id=1, - name="FOO", - description="Foo Bar", - location="baz", - terminal="bundy", - category="baz bundy", - hour="foo bar buz bundy", + airline="UA", + flight_number="1158", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime("2023-01-01 05:57:00", "%Y-%m-%d %H:%M:%S"), + arrival_time=datetime.strptime("2023-01-01 12:13:00", "%Y-%m-%d %H:%M:%S"), + departure_gate="C38", + arrival_gate="D30", ) - assert res == expected_res - - -@pytest.mark.asyncio -async def test_amenities_search(): - mockRecord = [ - MockRecord( - [ - ("id", 1), - ("name", "FOO"), - ("description", "Foo Bar"), - ("location", "baz"), - ("terminal", "bundy"), - ("category", "baz bundy"), - ("hour", "foo bar buz bundy"), - ] - ) - ] - query = """ - SELECT id, name, description, location, terminal, category, hour - FROM ( - SELECT id, name, description, location, terminal, category, hour, 1 - (embedding <=> $1) AS similarity - FROM amenities - WHERE 1 - (embedding <=> $1) > $2 - ORDER BY similarity DESC - LIMIT $3 - ) AS sorted_amenities - """ - query = " ".join(q.strip() for q in query.splitlines()).strip() - mocks = {query: mockRecord} - mockCl = await mock_postgres_provider(mocks) - res = await mockCl.amenities_search(1, 0.7, 1) - expected_res = [ - models.Amenity( - id=1, - name="FOO", - description="Foo Bar", - location="baz", - terminal="bundy", - category="baz bundy", - hour="foo bar buz bundy", - ) - ] - assert res == expected_res + assert res == expected + + +search_flights_by_number_test_data = [ + pytest.param( + "UA", + "1158", + [ + models.Flight( + id=1, + airline="UA", + flight_number="1158", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 05:57:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 12:13:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="C38", + arrival_gate="D30", + ), + models.Flight( + id=55455, + airline="UA", + flight_number="1158", + departure_airport="SFO", + arrival_airport="JFK", + departure_time=datetime.strptime( + "2023-10-15 05:18:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-10-15 08:40:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="B50", + arrival_gate="E4", + ), + ], + id="successful_airport_search", + ), + pytest.param( + "UU", + "0000", + [], + id="no_results", + ), +] + + +@pytest.mark.parametrize( + "airline, number, expected", search_flights_by_number_test_data +) +async def test_search_flights_by_number( + ds: postgres.Client, airline: str, number: str, expected: List[models.Flight] +): + res = await ds.search_flights_by_number(airline, number) + assert res == expected + + +search_flights_by_airports_test_data = [ + pytest.param( + "2023-01-01", + "SFO", + "ORD", + [ + models.Flight( + id=1, + airline="UA", + flight_number="1158", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 05:57:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 12:13:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="C38", + arrival_gate="D30", + ), + models.Flight( + id=13, + airline="UA", + flight_number="616", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 07:14:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 13:24:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="A11", + arrival_gate="D8", + ), + models.Flight( + id=25, + airline="AA", + flight_number="242", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 08:18:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 14:26:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="E30", + arrival_gate="C1", + ), + models.Flight( + id=109, + airline="UA", + flight_number="1640", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 17:01:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 23:02:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="E27", + arrival_gate="C24", + ), + models.Flight( + id=119, + airline="AA", + flight_number="197", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 17:21:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-01 23:33:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="D25", + arrival_gate="E49", + ), + models.Flight( + id=136, + airline="UA", + flight_number="1564", + departure_airport="SFO", + arrival_airport="ORD", + departure_time=datetime.strptime( + "2023-01-01 19:14:00", "%Y-%m-%d %H:%M:%S" + ), + arrival_time=datetime.strptime( + "2023-01-02 01:14:00", "%Y-%m-%d %H:%M:%S" + ), + departure_gate="E3", + arrival_gate="C48", + ), + ], + id="successful_airport_search", + ), + pytest.param( + "2023-01-01", + "FOO", + "BAR", + [], + id="no_results", + ), +] + + +@pytest.mark.parametrize( + "date, departure_airport, arrival_airport, expected", + search_flights_by_airports_test_data, +) +async def test_search_flights_by_airports( + ds: postgres.Client, + date: str, + departure_airport: str, + arrival_airport: str, + expected: List[models.Flight], +): + res = await ds.search_flights_by_airports(date, departure_airport, arrival_airport) + assert res == expected diff --git a/retrieval_service/datastore/providers/test_data.py b/retrieval_service/datastore/providers/test_data.py new file mode 100644 index 00000000..6b699464 --- /dev/null +++ b/retrieval_service/datastore/providers/test_data.py @@ -0,0 +1,2312 @@ +query_embedding1 = [ + -0.02946404181420803, + -0.0009542782790958881, + 0.02499477192759514, + 0.04238190874457359, + 0.02594580687582493, + 0.002041165716946125, + 0.041313741356134415, + 0.021334555000066757, + 0.02688632346689701, + -0.00854846928268671, + -0.016699519008398056, + 0.052917372435331345, + 0.014048699289560318, + 0.005184918642044067, + -0.008635163307189941, + -0.014549036510288715, + -0.03920283913612366, + -0.04977365583181381, + 0.03150419145822525, + 0.017532452940940857, + -0.06239777430891991, + 0.020751936361193657, + 0.017205839976668358, + 0.02057425118982792, + -0.01492479257285595, + -0.09499934315681458, + -0.03814544156193733, + -0.041910260915756226, + -0.00046497423318214715, + 0.01168155763298273, + 0.0061252485029399395, + -0.015614926815032959, + -0.013540854677557945, + -0.008056508377194405, + 0.0028526883106678724, + 0.047088623046875, + 0.028981400653719902, + 0.06047026440501213, + -0.004200954921543598, + 0.05622413009405136, + 0.031206853687763214, + -0.020157920196652412, + 0.01664292998611927, + -0.055051539093256, + -0.002758868271484971, + -0.0007850595866329968, + -0.09908975660800934, + 0.052481215447187424, + -0.018368393182754517, + -0.03010755404829979, + 0.0027875604573637247, + -0.005929810926318169, + -0.06057417020201683, + 0.029028870165348053, + 0.011783051304519176, + 0.024427542462944984, + -0.08659598976373672, + -0.03574372082948685, + 0.004660694859921932, + 0.009080094285309315, + -0.027182793244719505, + -0.004267462529242039, + 0.06308598816394806, + -0.03236643597483635, + -0.014503237791359425, + 0.020071513950824738, + -0.0027224819641560316, + -0.0019421563483774662, + 0.016571959480643272, + -0.001555258990265429, + 0.04586778208613396, + 0.022263651713728905, + -0.01494799554347992, + -0.028424473479390144, + 0.0012789276661351323, + 0.03413531556725502, + 0.029672876000404358, + -0.013497177511453629, + 0.044574908912181854, + -0.08851932734251022, + -0.047833967953920364, + -0.07950908690690994, + -0.016799798235297203, + -0.06935570389032364, + -0.02278050221502781, + -0.01739191822707653, + -0.026694340631365776, + -0.018025821074843407, + -0.021253004670143127, + 0.03632470965385437, + -0.07996638864278793, + 0.020915469154715538, + -0.004771284759044647, + 0.01088592316955328, + -0.07843612879514694, + 0.009325109422206879, + -0.03663209453225136, + -0.04874539375305176, + -0.028681252151727676, + -0.0044021159410476685, + -0.03123042732477188, + -0.013165963813662529, + 0.01968570612370968, + -0.047588594257831573, + 0.04565591737627983, + 0.004930099938064814, + -0.046903882175683975, + 0.0554913654923439, + -0.02345682494342327, + -0.041545167565345764, + -0.05141756311058998, + 0.01787012442946434, + -0.03065611980855465, + 0.0029817114118486643, + 0.0326509028673172, + -0.09421277046203613, + 0.0376739539206028, + 0.036524638533592224, + -0.03187327831983566, + -0.023861393332481384, + -0.07491499185562134, + 0.03052249550819397, + 0.010787208564579487, + -0.02927456982433796, + 0.030607739463448524, + -0.028283534571528435, + 0.03820084407925606, + 0.03357210382819176, + -0.034567005932331085, + -0.028928836807608604, + 0.01191829051822424, + 0.010430971160531044, + 0.03698663040995598, + -0.017469896003603935, + 0.019057918339967728, + 0.013772952370345592, + -0.0215271208435297, + -0.004031152930110693, + 0.021585794165730476, + 0.037771545350551605, + -0.04461625590920448, + 0.03892817348241806, + -0.05882488191127777, + 0.03775455802679062, + 0.026196314021945, + -0.01747111976146698, + -0.011178460903465748, + -0.0405130535364151, + -0.033899206668138504, + -0.025606846436858177, + 0.030028460547327995, + -0.03048599883913994, + -0.006819664500653744, + 0.005851021967828274, + 0.033772073686122894, + 0.07200861722230911, + 0.015408939681947231, + 0.07720548659563065, + -0.024676714092493057, + -0.04014058783650398, + -0.04571777582168579, + 0.012394560500979424, + -0.004957502707839012, + -0.029123853892087936, + 0.031095102429389954, + 0.009152823127806187, + -0.015089576132595539, + 0.005934769753366709, + -0.004803454969078302, + -0.027963250875473022, + 0.03502025827765465, + -0.09647639840841293, + 0.03639320284128189, + -0.07039535790681839, + 0.09120484441518784, + 0.008690649643540382, + 0.012545140460133553, + 0.04570859670639038, + -0.0012167660752311349, + -0.04363969713449478, + -0.03331594541668892, + -0.042613618075847626, + 0.0037250083405524492, + -0.01416601613163948, + -0.04483838379383087, + 0.034404218196868896, + -0.024617904797196388, + -0.027172330766916275, + -0.036913853138685226, + 0.04830193519592285, + -0.02210884541273117, + 0.02128426916897297, + 0.013231674209237099, + -0.03136596083641052, + -0.024621138349175453, + -0.0025173078756779432, + 0.03955889865756035, + -0.13385678827762604, + -0.015471472404897213, + 0.03639710694551468, + -0.03040733002126217, + -0.02266520820558071, + -0.029171191155910492, + 0.026380861178040504, + -0.06299404799938202, + 0.010527064092457294, + -0.012687429785728455, + 0.08835135400295258, + 0.017867956310510635, + -0.010917541570961475, + 0.04582078009843826, + -0.013390996493399143, + 0.013193956576287746, + 0.016396738588809967, + -0.019145065918564796, + -0.0030332105234265327, + 0.017945004627108574, + -0.018311765044927597, + -0.014151012524962425, + 0.006248133722692728, + -0.02290491573512554, + -0.039977092295885086, + 0.04773365333676338, + -0.014635642059147358, + 0.03166806697845459, + -0.022160714492201805, + 0.058086372911930084, + 0.03451661020517349, + 0.004438686650246382, + 0.01246312353760004, + -0.029328467324376106, + 0.006728751584887505, + -0.006370202172547579, + -0.009905007667839527, + -0.01571926288306713, + 0.019836708903312683, + 0.07207431644201279, + 0.008284606039524078, + -0.0072106472216546535, + 0.001389862154610455, + 0.006028886418789625, + 0.09367536753416061, + 0.0006510308012366295, + 0.018759826198220253, + -0.012943114154040813, + 0.020985716953873634, + -0.04048512130975723, + -0.005736588034778833, + 0.037814684212207794, + -0.0352688804268837, + 0.002220812952145934, + -0.05266701057553291, + 0.02046988531947136, + 0.008668926544487476, + -0.0014196678530424833, + 0.013479831628501415, + -0.03942909464240074, + 0.02476683259010315, + -0.005765057634562254, + 0.004795223008841276, + -0.006929359864443541, + -0.011055879294872284, + 0.05604616925120354, + 0.08576870709657669, + 0.012433639727532864, + -0.0239840317517519, + -0.08226781338453293, + 0.004405093379318714, + 0.02212228998541832, + -0.011991254985332489, + -0.02400401048362255, + -0.056559786200523376, + 0.010290292091667652, + 0.06455011665821075, + 0.01990962214767933, + 0.008089608512818813, + -0.022743433713912964, + 0.05164412409067154, + 0.0002486558514647186, + 0.03077862411737442, + 0.00466177286580205, + -0.044910624623298645, + -0.019095152616500854, + 0.06695213913917542, + -0.01959141343832016, + 0.04069357365369797, + -0.03579730540513992, + 0.02909039333462715, + -0.07477638125419617, + -0.016936764121055603, + 0.060369253158569336, + -0.02983112446963787, + -0.03412136808037758, + -0.006111070979386568, + -0.017767880111932755, + -0.018003493547439575, + 0.045737892389297485, + -0.038882359862327576, + 0.013315511867403984, + -0.0022150049917399883, + -0.009042770601809025, + -0.013724047690629959, + -0.0016990856966003776, + -0.005459603387862444, + -0.031501684337854385, + -0.008726319298148155, + -0.014138534665107727, + -0.009808882139623165, + 0.04546033963561058, + -0.012486610561609268, + 0.005250733811408281, + -0.013480974361300468, + 0.021013371646404266, + 0.0012367464369162917, + -0.022953437641263008, + 0.0708567276597023, + 0.0037625846453011036, + -0.0616907961666584, + -0.006922682747244835, + 0.03134817257523537, + -0.05317297577857971, + 0.011400633491575718, + 0.0786433294415474, + 0.0022327264305204153, + -0.025559812784194946, + -0.007582043297588825, + 0.00231811311095953, + 0.011647081933915615, + 0.07617463916540146, + -0.08509038388729095, + -0.010747053660452366, + 0.06561320275068283, + -0.05432697385549545, + 0.04348050430417061, + 0.020871292799711227, + -0.02819858491420746, + -0.012919546104967594, + 0.09442554414272308, + 0.004240683279931545, + -0.07291602343320847, + 0.0007652532076463103, + -0.058788832277059555, + -0.012620540335774422, + -0.029580548405647278, + -0.05353056266903877, + 0.02329876646399498, + -0.05703838914632797, + -0.032525453716516495, + -0.010866779834032059, + -0.03331834450364113, + -0.0009878461714833975, + 0.011944343335926533, + -0.014714676886796951, + 0.03751973435282707, + -0.021023212000727654, + 0.03385349363088608, + -0.023704715073108673, + 0.052419472485780716, + 0.005966719705611467, + -0.020631568506360054, + -0.020789556205272675, + 0.004331571515649557, + -0.06381034106016159, + 0.06561916321516037, + -0.0149469505995512, + 0.023150218650698662, + -0.03542403131723404, + 0.037629567086696625, + -0.02911369316279888, + -0.034657761454582214, + 0.009191573597490788, + 0.03343372046947479, + -0.00995044969022274, + -0.02655031345784664, + -0.033548615872859955, + -0.017216898500919342, + -0.057828985154628754, + -0.014342808164656162, + 0.0036454289220273495, + -0.02024747245013714, + -0.015469048172235489, + 0.018893033266067505, + 0.0066984714940190315, + -0.020473187789320946, + -0.030115341767668724, + 0.06212032586336136, + 0.06669442355632782, + 0.07226879149675369, + 0.02825787477195263, + -0.03362699970602989, + 0.039503466337919235, + 0.01891917735338211, + 0.0176430381834507, + -0.0359111912548542, + -0.008966672234237194, + 0.04902995750308037, + -0.02922195754945278, + -0.015352883376181126, + -0.019601965323090553, + -0.04669254273176193, + 0.006914177909493446, + 0.03842151537537575, + 0.010520209558308125, + -0.05604931712150574, + 0.026317501440644264, + 0.02537235990166664, + 0.04268808290362358, + 0.006550601217895746, + -0.009174342267215252, + -0.025204358622431755, + 0.014228859916329384, + -0.026965981349349022, + -0.020411111414432526, + 0.04685971885919571, + 0.012103674001991749, + -0.03969547525048256, + -0.020404627546668053, + -0.07443449646234512, + 0.012117259204387665, + 0.039943188428878784, + 0.00045933687943033874, + -0.02912430465221405, + -0.04824567958712578, + 0.014735030941665173, + 0.008995594456791878, + -0.014220691286027431, + -0.015218149870634079, + -0.008546334691345692, + -0.013469361700117588, + -0.04140029475092888, + 0.04084637016057968, + -0.02159075066447258, + -0.03635876253247261, + -0.030715996399521828, + -0.00937339011579752, + -0.0551670640707016, + 0.09001560509204865, + 0.07517687231302261, + 0.020969662815332413, + 0.009878208860754967, + -0.05153372511267662, + -0.012265834957361221, + -0.0272368174046278, + -0.0049587939865887165, + 0.015166105702519417, + -0.03296222537755966, + 0.017871160060167313, + 0.023288669064641, + -0.06750179082155228, + -0.04512272775173187, + -0.02817072905600071, + 0.01373403798788786, + 0.005040606949478388, + 0.09487850964069366, + -0.033809252083301544, + -0.0404609814286232, + 0.029507992789149284, + -0.024171719327569008, + 0.060721542686223984, + -0.015055441297590733, + -0.02510896325111389, + 0.03252003714442253, + -0.012770678848028183, + 0.08590060472488403, + -0.030261974781751633, + -0.010064195841550827, + 0.011300144717097282, + 0.007361617870628834, + -0.03028370812535286, + 0.0005305733648128808, + -0.04318937659263611, + 0.01627531461417675, + 0.02853165939450264, + -0.004366144072264433, + 0.01907699555158615, + 0.02496040239930153, + 0.052659668028354645, + 0.02960127778351307, + -0.0046593304723501205, + -0.005015597678720951, + -0.03979461267590523, + 0.04188409820199013, + 0.0016373726539313793, + 0.03580173850059509, + 0.07177349925041199, + 0.03234562277793884, + 0.023724770173430443, + -0.013788876123726368, + 0.003163648769259453, + 0.018900852650403976, + 0.04500347375869751, + -0.04465462639927864, + 0.0036284937523305416, + -0.06909294426441193, + 0.04770052060484886, + -0.03207298740744591, + -0.04167110100388527, + -0.019704420119524002, + -0.004292470868676901, + 0.0045038131065666676, + 0.024214303120970726, + -0.014696590602397919, + 0.030858827754855156, + 0.012445824220776558, + 0.000744861550629139, + -0.008884341455996037, + 0.02398046851158142, + -0.07975137233734131, + -0.044899243861436844, + -0.003809106070548296, + -0.042505260556936264, + 0.01503401156514883, + 0.01537020318210125, + -0.07946421205997467, + -0.013706144876778126, + -0.07687674462795258, + -0.008990603499114513, + 0.015561639331281185, + -0.03415680676698685, + 0.010606249794363976, + 0.007526716683059931, + -0.0531030036509037, + 0.03496972844004631, + -0.014925209805369377, + 0.008838342502713203, + 0.0587320551276207, + 0.02351228892803192, + -0.043416883796453476, + 0.00360901840031147, + -0.013728837482631207, + 0.011847359128296375, + 0.004298397805541754, + 0.01617065817117691, + 0.020170221105217934, + -0.005176772363483906, + -0.01883070170879364, + 0.017310496419668198, + 0.029020071029663086, + 0.06659159809350967, + 0.06577903032302856, + 0.015443377196788788, + -0.054307229816913605, + 0.05566226691007614, + -0.0029023000970482826, + 0.03145438805222511, + 0.025303788483142853, + -0.010616070590913296, + 0.05852823331952095, + -0.038010165095329285, + 0.014973007142543793, + 0.016782566905021667, + -0.054295748472213745, + 0.002087546046823263, + 0.0637286901473999, + 0.017512599006295204, + -0.02809739112854004, + 0.01259680837392807, + -0.05781327188014984, + -0.010795687325298786, + -0.05074609816074371, + -0.012367073446512222, + 0.018145503476262093, + -0.03445670008659363, + -0.011057429015636444, + -0.008547752164304256, + -0.026818620041012764, + 0.08329484611749649, + 0.015481444075703621, + -0.012361963279545307, + 0.05176141858100891, + -0.0324181392788887, + -0.017464160919189453, + -0.03721658140420914, + 0.04314779117703438, + 0.02720576524734497, + 0.00797997135668993, + -0.02003932185471058, + -0.0018182671628892422, + 0.0074551282450556755, + 0.028493719175457954, + -0.06672706454992294, + 0.005778085440397263, + -0.01507238857448101, + 0.016933850944042206, + -0.030889660120010376, + 0.026422657072544098, + 0.0039023899007588625, + -0.06241646036505699, + 0.02127205953001976, + 0.01236813236027956, + 0.013543383218348026, + -0.07954715192317963, + -0.03636208921670914, + 0.013003537431359291, + -0.04165181145071983, + -0.030872400850057602, + -0.013955961912870407, + 0.006248731631785631, + -0.08913268148899078, + -0.0025933224242180586, + -0.00036715177702717483, + 0.018571676686406136, + 0.03954824060201645, + -0.07332576811313629, + -0.010362238623201847, + 0.026308219879865646, + 0.031242867931723595, + -0.007128982804715633, + 0.022525379434227943, + 0.039359599351882935, + 0.05481522157788277, + 0.03401576355099678, + 0.0268019400537014, + 0.03117292933166027, + -0.052964337170124054, + -0.004172163549810648, + 0.029553595930337906, + 0.033484913408756256, + 0.01105195190757513, + 0.015667183324694633, + 0.010137148201465607, + 0.010891526006162167, + -0.048694781959056854, + -0.0709080919623375, + 0.06979095190763474, + -0.0003758189268410206, + -0.026683811098337173, + 0.0430239774286747, + -0.02328486368060112, + 0.03198495879769325, + -0.005933202337473631, + -0.045038219541311264, + -0.02016332931816578, + -0.03596983477473259, + 0.008145206607878208, + -0.0036964186001569033, + -0.00259453640319407, + 0.008942563086748123, + 0.03478352725505829, + 0.03876041993498802, + 0.03009156323969364, + 0.002089024754241109, + -0.043598074465990067, + -0.07684443145990372, + 0.005879852920770645, + 0.02374214120209217, + 0.0047075180336833, + -0.008620097301900387, + -0.0021142088808119297, + 0.004380355589091778, + -0.004790365695953369, + -0.017660178244113922, + -0.04637463763356209, + -0.09201303124427795, + 0.003671554382890463, + -0.011030333116650581, + -0.016209693625569344, + 0.013846062123775482, + -0.0224930252879858, + 0.03291728347539902, + 0.01513942051678896, + -0.024374818429350853, + -0.032898928970098495, + 0.05849393829703331, + -0.026003556326031685, + 0.06514769047498703, + -0.016560900956392288, + 0.01981954649090767, + 0.0065530226565897465, + -0.02231631614267826, + -0.02685670182108879, + -0.08457811176776886, + 0.06164355203509331, + -0.04126203432679176, + 0.0010116862831637263, + -0.00035705752088688314, + 0.04534140229225159, + 0.045459821820259094, + 0.03761884942650795, + -0.006572377867996693, + -0.07608605921268463, + 0.05184116214513779, + 0.023492075502872467, + -0.015472265891730785, + 0.018019935116171837, + -0.02904898300766945, + 0.016606610268354416, + 0.015958266332745552, + 0.03516681492328644, + -0.015982547774910927, + 0.032288528978824615, + 0.029968107119202614, + -0.04096989333629608, + -0.012364188209176064, + -0.012014870531857014, + -0.0444222129881382, + -0.015005718916654587, + -0.01454306673258543, + -0.03822185844182968, + 0.00979216955602169, + -0.004423267673701048, + 0.02734212577342987, + 0.005607240833342075, + 0.045764222741127014, + 0.031745944172143936, + 0.0021443921141326427, + -0.03987933322787285, + -0.029857363551855087, + -0.03154676780104637, + -0.03581515699625015, + 0.014139964245259762, + -0.04434432461857796, + -0.006634465418756008, + 0.011539393104612827, + 0.02632608637213707, + 0.01219572126865387, + -0.06625013053417206, + 0.04190772771835327, + 0.031179530546069145, + 0.045696284621953964, + -0.05173428729176521, + 0.026402728632092476, + 0.0476255789399147, + 0.00853040348738432, + -0.032067663967609406, + 0.03409476950764656, + 0.01292322389781475, + -0.022781431674957275, + 0.019580410793423653, + 0.02533815987408161, + -0.004099167417734861, + 0.0015545799396932125, + 0.024247411638498306, + -0.020709553733468056, + 0.047248777002096176, + -0.0293032955378294, + 0.07333750277757645, + 0.018531499430537224, + 0.055921874940395355, + -0.07362079620361328, + -0.013896472752094269, + -0.006343598943203688, + -0.01978602632880211, + -0.060566291213035583, + 0.005315757822245359, + -0.010384296998381615, + -0.01644613966345787, + 0.022363096475601196, + -0.027765071019530296, + -0.027118239551782608, + -0.0748642161488533, + -0.00011568328773137182, + 0.023535965010523796, + 0.02945105731487274, + -0.04811403900384903, + 0.05605367198586464, + 0.08047299087047577, + 0.07418738305568695, + 7.767714851070195e-05, + 0.09531079977750778, + -0.012002258561551571, + -0.001894432120025158, + -0.047635193914175034, + 0.049734074622392654, + 0.003367048455402255, + 0.048475589603185654, + -0.0373636931180954, + 0.024559056386351585, +] + +query_embedding2 = [ + -0.04288441687822342, + -0.029794270172715187, + 0.046654727309942245, + 0.05399981513619423, + -0.0011905670398846269, + -0.047127678990364075, + -0.0012343158014118671, + 0.007496086414903402, + -0.004505593329668045, + 0.0049041323363780975, + -0.005958726163953543, + 0.05306301638484001, + 0.06468763947486877, + 0.048271626234054565, + -0.006016217637807131, + -0.06492283940315247, + -0.03635110706090927, + -0.009494971483945847, + 0.044999733567237854, + 0.02320045977830887, + -0.09395786374807358, + -0.019222846254706383, + -0.019053978845477104, + -0.008751682937145233, + 0.004686135333031416, + -0.08127515763044357, + -0.021030012518167496, + 0.01826000213623047, + -0.006390058435499668, + 0.0024112213868647814, + -0.023543335497379303, + -0.015611402690410614, + -0.03057660534977913, + -0.030204419046640396, + -0.01951836794614792, + 0.05566876009106636, + -0.019141431897878647, + 0.024752693250775337, + -0.03679497912526131, + -0.008789075538516045, + 0.01800333894789219, + -0.053285691887140274, + 0.043864455074071884, + -0.032170381397008896, + -0.001766917877830565, + -0.01947399415075779, + -0.05819450691342354, + -0.016013555228710175, + 0.0006303848931565881, + -0.07228288799524307, + 0.006579122506082058, + -0.020240027457475662, + -0.055234529078006744, + 0.05557403340935707, + -0.012449285015463829, + -2.7304082323098555e-05, + -0.08066966384649277, + 0.01714768260717392, + 0.010468762367963791, + 0.0009416101966053247, + 0.01821577176451683, + -0.04032423719763756, + -0.0008177754934877157, + -0.04884307458996773, + -0.012957293540239334, + 0.0026536525692790747, + -0.011776234954595566, + 0.018030725419521332, + -0.030795149505138397, + -0.03360399231314659, + 0.04142892360687256, + 0.0020187983755022287, + -0.004202414769679308, + -0.015851857140660286, + 0.01580830104649067, + 0.019348200410604477, + 0.028364496305584908, + 0.02276039496064186, + 0.002526437398046255, + -0.04383162036538124, + 0.009008410386741161, + -0.02298373356461525, + -0.10559917241334915, + -0.09705128520727158, + 0.021443841978907585, + 0.06577710062265396, + -0.0032428568229079247, + 0.024532271549105644, + -0.02522449381649494, + 0.03472672402858734, + -0.010174240916967392, + 0.00766036007553339, + 0.04668422415852547, + 0.03287024423480034, + -0.04519747942686081, + -0.004802236799150705, + 0.005587847903370857, + 0.005240959115326405, + 0.025478556752204895, + -0.026835087686777115, + -0.03998895362019539, + -0.05564912408590317, + 0.016515398398041725, + -0.04209068417549133, + 0.03350674733519554, + -0.04637420177459717, + 0.004924160894006491, + 0.015389698557555676, + -0.05631433427333832, + -0.027508242055773735, + -0.0881006270647049, + 0.00733370054513216, + -0.04000123217701912, + -0.0054408228024840355, + 0.02824477292597294, + -0.059896957129240036, + 0.028803953900933266, + -0.018457742407917976, + 0.020308062434196472, + 0.014831175096333027, + -0.08310823887586594, + -0.018535787239670753, + 0.027222655713558197, + -0.020914072170853615, + -0.006886438932269812, + 0.014444459229707718, + 0.03096863068640232, + -0.0065706875175237656, + -0.04016219824552536, + -0.012685772031545639, + 0.0790732204914093, + -0.027253026142716408, + 0.039682403206825256, + -0.02127244509756565, + 0.017493432387709618, + 0.022683870047330856, + 0.013462481088936329, + -0.0023885525297373533, + 0.010753555223345757, + 0.0347076840698719, + -0.06547170877456665, + -0.01121924165636301, + -0.027543583884835243, + -0.01476210542023182, + -0.010045621544122696, + -0.0350809209048748, + -0.008490744978189468, + -0.046732932329177856, + -0.006962686311453581, + -0.015921294689178467, + -0.003251092741265893, + -0.041570477187633514, + -0.006733060348778963, + 0.051046472042798996, + 0.02168017253279686, + 0.03980628028512001, + 0.03865642100572586, + 0.05920490249991417, + -0.030245156958699226, + -0.11604128032922745, + -0.022452963516116142, + -0.039306655526161194, + -0.02260219305753708, + 0.024013327434659004, + 0.044573646038770676, + -0.00791219063103199, + -0.04264440760016441, + -0.03105209395289421, + -0.03230096772313118, + 0.011406337842345238, + 0.02772151306271553, + -0.1258286088705063, + -0.009807097725570202, + -0.006536561530083418, + 0.022918283939361572, + -0.012612748891115189, + 0.0018959114095196128, + 0.02950652502477169, + 0.034235112369060516, + -0.03929726779460907, + -0.06723563373088837, + -0.022991277277469635, + 0.003571953158825636, + 0.026723597198724747, + -0.055784646421670914, + -0.009476971812546253, + 0.007284326478838921, + -0.018708443269133568, + -0.04066111892461777, + 0.04900268837809563, + -0.0372801348567009, + 0.03753283992409706, + 0.026771504431962967, + -0.0879940465092659, + -0.038653042167425156, + -0.011245623230934143, + 0.0006599461776204407, + -0.13638098537921906, + -0.029619604349136353, + 0.04472807049751282, + -0.0013916112948209047, + 0.026330942288041115, + -0.006471255328506231, + 0.012781775556504726, + -0.05545247718691826, + -0.003991956822574139, + -0.05582353472709656, + 0.04360445216298103, + -0.032944124191999435, + -0.02428405173122883, + -0.029936479404568672, + -0.015898188576102257, + 0.037019696086645126, + 0.03859376162290573, + -0.017694704234600067, + -0.009288685396313667, + -0.02283135987818241, + -0.04526308923959732, + -0.03233538195490837, + 0.02780252881348133, + 0.015580719336867332, + 0.020601782947778702, + -0.0053567164577543736, + 0.05635571852326393, + 0.009470535442233086, + 0.029476948082447052, + 0.005246586166322231, + 0.05176783725619316, + 0.02206300012767315, + 0.010652877390384674, + 0.003379765199497342, + -0.0006390624330379069, + -0.025799734517931938, + 0.005261036101728678, + 0.0024248978588730097, + 0.03674038499593735, + 0.07095342129468918, + -0.058252330869436264, + -0.014483488164842129, + -0.054114557802677155, + 0.03109990991652012, + 0.10836923122406006, + -0.0484536774456501, + 0.01724483259022236, + -0.015533196739852428, + 0.021747039631009102, + 0.02681351825594902, + -0.0009718529763631523, + 0.03378524258732796, + -0.027780672535300255, + -0.023867623880505562, + -0.03667343780398369, + 0.03705012425780296, + -0.05169007554650307, + 0.03186459466814995, + -0.01684562861919403, + -0.02678983472287655, + 0.048335738480091095, + -0.040028516203165054, + -0.014757242053747177, + -0.0127450255677104, + -0.02862524427473545, + 0.03173372521996498, + 0.11163005977869034, + -0.042701974511146545, + -0.02409849502146244, + -0.05028828978538513, + 0.04959481209516525, + 0.03860084339976311, + -0.04266790300607681, + 0.002563237678259611, + -0.013153472915291786, + 0.027547242119908333, + 0.08058217167854309, + 0.011890685185790062, + 0.029079683125019073, + -0.04584793001413345, + 0.06282514333724976, + 0.00227099796757102, + 0.055214572697877884, + 0.006356474477797747, + -0.03181469812989235, + 0.024270473048090935, + 0.10476630181074142, + 0.028744179755449295, + 0.02490065060555935, + 0.0006255546468310058, + 0.025211118161678314, + -0.06749050319194794, + 0.01614673063158989, + 0.12358299642801285, + 0.01678132452070713, + -0.03496373072266579, + 0.044420186430215836, + 0.0004804298223461956, + -0.054187651723623276, + 0.05236735939979553, + 0.0002701797930058092, + -0.031240049749612808, + 0.0020464148838073015, + -0.05645773932337761, + 0.005069665145128965, + 0.044098153710365295, + -0.011893928050994873, + -0.043098386377096176, + 0.006851932033896446, + 0.005838989745825529, + 0.007470000069588423, + 0.04158453270792961, + -0.01349707692861557, + -0.01879109814763069, + -0.02462427318096161, + -0.009998644702136517, + 0.015297475270926952, + -0.01897834986448288, + 0.026853280141949654, + 0.004158638417720795, + 0.024246985092759132, + -0.04404081776738167, + 0.032420121133327484, + -0.038001660257577896, + -0.008093664422631264, + 0.07514645904302597, + 0.03219633921980858, + -0.010136879049241543, + -0.04423626512289047, + 0.03660351783037186, + -0.02591453678905964, + 0.07294905185699463, + -0.01199509296566248, + 0.01875327341258526, + 0.012974288314580917, + -0.04186192527413368, + 0.01777511090040207, + 0.025267811492085457, + 0.031218254938721657, + -0.02178730070590973, + -0.014112538658082485, + -0.003739916952326894, + -0.07527674734592438, + -0.009595250710844994, + -0.0180673748254776, + 0.004758266732096672, + 0.000647203007247299, + -0.035704106092453, + 0.00937481690198183, + -0.07103703171014786, + -0.0169987790286541, + -0.025609252974390984, + -0.024849146604537964, + -0.011491335928440094, + 0.0036047992762178183, + -0.020811595022678375, + 0.05912923440337181, + 0.03351689130067825, + 0.05194295197725296, + 0.030894191935658455, + 0.0608377642929554, + 0.010439193807542324, + 0.006086164154112339, + -0.035863976925611496, + -0.0018922577146440744, + -0.04500851407647133, + 0.06861409544944763, + -0.019141850993037224, + 0.018323298543691635, + -0.04808717593550682, + 0.012284558266401291, + -0.03546721488237381, + 0.007550591602921486, + -0.017769165337085724, + -0.028667712584137917, + 0.002111333655193448, + 0.007559566292911768, + -0.005739388521760702, + 0.037372663617134094, + -0.032074905931949615, + 0.06562872231006622, + 0.007914634421467781, + 0.039434343576431274, + -0.05628278851509094, + 0.08713188022375107, + 0.038004979491233826, + -0.008079742081463337, + -0.01591455563902855, + 0.03683622181415558, + 0.02630029246211052, + 0.03215455263853073, + 0.012655988335609436, + -0.013356398791074753, + -0.0024396865628659725, + -0.008485225960612297, + 0.023106291890144348, + -0.002329498529434204, + -0.048625726252794266, + 0.022232919931411743, + -0.002460525371134281, + -0.013707246631383896, + -0.0029282430186867714, + -0.024312669411301613, + 0.01998383365571499, + 0.023600781336426735, + -0.017424505203962326, + -0.052610013633966446, + -0.002532344777137041, + -0.010699396952986717, + 0.07517430186271667, + -0.006711147725582123, + 0.0237867534160614, + -0.01719006896018982, + 0.029566701501607895, + 0.0068317861296236515, + -0.03973505645990372, + 0.06881605833768845, + -0.0008761335629969835, + -0.06384257972240448, + -0.006327711511403322, + -0.027471376582980156, + 0.004678249359130859, + 0.03209757059812546, + -0.016975026577711105, + 0.0030095172114670277, + -0.05426247417926788, + 0.02980688214302063, + 0.016488969326019287, + 0.03577635437250137, + -0.05614800378680229, + -0.020530877634882927, + -0.019278990104794502, + -0.06038668751716614, + -0.03494405373930931, + -0.014406973496079445, + 0.015049817971885204, + -0.03922590985894203, + 0.014047245495021343, + -0.0610201358795166, + 0.03447146341204643, + 0.06294546276330948, + 0.008148410357534885, + -0.020686157047748566, + -0.0021154391579329967, + -0.018385285511612892, + -0.05157199501991272, + 0.00844517257064581, + 0.03880971670150757, + -0.048244427889585495, + -0.036521416157484055, + -0.02461235783994198, + -0.11709846556186676, + -0.015611113980412483, + -0.06226412206888199, + 0.007745102979242802, + 0.005047926213592291, + 0.06151699647307396, + -0.024818049743771553, + -0.012532185763120651, + 0.04124283045530319, + -0.05278255045413971, + 0.03938949853181839, + -0.021047351881861687, + -0.06906545907258987, + -0.01176818273961544, + 0.021392028778791428, + 0.007691882085055113, + -0.05328843742609024, + -0.02839767374098301, + -0.012392742559313774, + 0.06038041040301323, + -0.02033349499106407, + 0.00876418873667717, + -0.016967568546533585, + 0.03905458748340607, + -0.019182786345481873, + 0.01031213253736496, + 0.05037586763501167, + 0.027481969445943832, + 0.03529584780335426, + 0.07723141461610794, + -0.012658460065722466, + -0.00916327815502882, + -0.07517234981060028, + 0.046369656920433044, + -0.0036047426983714104, + -0.07011701911687851, + 0.011319050565361977, + -0.001380462315864861, + 0.017106780782341957, + -0.00793350301682949, + 0.010403444990515709, + 0.05296079069375992, + 0.01819067820906639, + -0.041032806038856506, + 0.04794609546661377, + -0.023812077939510345, + -0.0018054944230243564, + -0.01585187017917633, + 0.021039897575974464, + -0.011966328136622906, + 0.004569238051772118, + -0.027189383283257484, + 0.040892794728279114, + -0.03893906623125076, + 0.033383917063474655, + 0.011770491488277912, + -0.055701084434986115, + 0.0019310945644974709, + 0.036757394671440125, + -0.030488017946481705, + -0.06554272770881653, + -0.010159889236092567, + 0.000282769906334579, + -0.007798034697771072, + 0.0037236674688756466, + 0.004512794315814972, + -0.0008662914042361081, + -0.06443078815937042, + 0.01655407063663006, + -0.012473836541175842, + -0.012243982404470444, + -0.04917829856276512, + -0.02979276329278946, + -0.025446919724345207, + 0.006350996904075146, + 0.007376883178949356, + 0.026044663041830063, + 0.03128660097718239, + 0.013402553275227547, + -0.012482556514441967, + -0.010109267197549343, + -0.013238418847322464, + 0.017683248966932297, + 0.02268625982105732, + -0.021352533251047134, + 0.024532191455364227, + -0.011498180218040943, + -0.011614716611802578, + 0.00944511592388153, + 0.02775144949555397, + 0.019913647323846817, + 0.0318894237279892, + -0.00044908036943525076, + -0.043479859828948975, + 0.0018090843223035336, + 0.01000469084829092, + 0.016223307698965073, + 0.04347043111920357, + -0.02650635689496994, + 0.01591530628502369, + -0.008232790976762772, + 0.021545996889472008, + -0.0014633191749453545, + -0.052495699375867844, + -0.07309917360544205, + -0.009266968816518784, + 0.04906731843948364, + 0.004244298208504915, + 0.04605720192193985, + -0.052449461072683334, + 0.010635055601596832, + -0.023452740162611008, + 0.016708236187696457, + 0.0159523393958807, + -0.047741636633872986, + -0.04941872879862785, + 0.053693752735853195, + -0.08302196860313416, + 0.05103582516312599, + 0.03176932409405708, + 0.001255091861821711, + 0.046938106417655945, + 0.027289114892482758, + -0.06357035040855408, + -0.019605712965130806, + 0.017436344176530838, + 0.030243834480643272, + 0.015547016635537148, + -0.01916947402060032, + -0.016204211860895157, + -0.007869177497923374, + 0.039065729826688766, + -0.04503750056028366, + 0.05754911154508591, + 0.005266947206109762, + -0.01762167364358902, + -0.026269685477018356, + -0.013241001404821873, + -0.035356305539608, + -0.018601952120661736, + -0.005283146630972624, + -0.002820952795445919, + 0.04141271859407425, + -0.05365968495607376, + -0.038780324161052704, + 0.016293833032250404, + -0.020714376121759415, + -0.02090720273554325, + -0.01676369458436966, + 0.023253660649061203, + -0.053677998483181, + 0.04128901660442352, + 0.056998878717422485, + -0.01568027399480343, + 0.004198575392365456, + -0.008464450016617775, + -0.012719736434519291, + 0.01132543757557869, + 0.040610421448946, + 0.038428254425525665, + 0.05802904814481735, + 0.05358821526169777, + 0.009955446235835552, + 0.03975310176610947, + 0.009833412244915962, + 0.0522594153881073, + -0.04665861278772354, + -0.025885257869958878, + -0.03094654530286789, + 0.05769556015729904, + 0.03936481475830078, + 0.0020015803165733814, + 0.017590738832950592, + 0.0026802215725183487, + -0.037970494478940964, + -0.0484975129365921, + 0.04548044875264168, + 0.014605936594307423, + 0.01347513310611248, + 0.05144737288355827, + -0.003960766363888979, + -0.016413137316703796, + -0.013246109709143639, + -0.04442806914448738, + -0.05426264554262161, + -0.043470971286296844, + 0.01920302025973797, + -0.0272656362503767, + -0.015890823677182198, + 0.0010159761877730489, + 0.016253072768449783, + 0.007693011313676834, + 0.01769653707742691, + 0.0003941635077353567, + -0.021980522200465202, + -0.04228046536445618, + 0.01427258737385273, + -0.02487555705010891, + -0.04500977322459221, + -0.002230576239526272, + -0.06488165259361267, + 0.07119899243116379, + 0.02234531380236149, + 0.005994661711156368, + -0.0439775213599205, + -0.058719389140605927, + -0.034462109208106995, + 0.0251019187271595, + 0.013165229931473732, + 0.08156638592481613, + -0.010345499962568283, + 0.04378737136721611, + -0.004953603260219097, + 0.024198951199650764, + 0.017752796411514282, + 0.03421253338456154, + -0.039037302136421204, + 0.07071371376514435, + 0.048956651240587234, + 0.03882423788309097, + 0.020043950527906418, + -0.03742733597755432, + -0.0038605285808444023, + -0.03549884632229805, + -0.023828154429793358, + 0.005047580227255821, + -0.01729298196732998, + -0.04174131155014038, + 0.024312831461429596, + 0.03134280815720558, + -0.0008888196898624301, + 0.003334053559228778, + -0.04108215495944023, + 0.012552737258374691, + 0.05229775607585907, + -0.026344994083046913, + 0.04664930701255798, + -0.0536196231842041, + 0.01864136941730976, + -0.02237110771238804, + -0.01657450944185257, + -0.06365357339382172, + -0.011398152448236942, + 0.041742824018001556, + 0.0108384033665061, + -0.027698520570993423, + -0.015565111301839352, + -0.0786176547408104, + -0.048057280480861664, + 0.031995855271816254, + 0.028225958347320557, + 0.03319527581334114, + 0.0240549985319376, + 0.006879708264023066, + 0.023320002481341362, + 0.04161510616540909, + 0.04474230855703354, + -0.037547022104263306, + 0.007204482797533274, + 0.0025922153145074844, + -0.04241529852151871, + -0.045668479055166245, + -0.003963167779147625, + -0.034311067312955856, + 0.0700608640909195, + -0.005983802489936352, + -0.005656956695020199, + 0.0987168699502945, + -0.02821529284119606, + -0.018143590539693832, + 0.012665217742323875, + 0.002936502220109105, + -0.00746096670627594, + -0.0011896094074472785, + 0.005031971260905266, + -0.06444770097732544, + 0.00750824436545372, + -0.034975338727235794, + -0.018209204077720642, + 0.006169786676764488, + -0.04213841259479523, + 0.006868218537420034, + -0.006110095418989658, + 0.0011691197287291288, + 0.00903551559895277, + 0.0071990713477134705, + -0.004960146266967058, + -0.0160149447619915, + 0.04465107247233391, + 0.02242264710366726, + 0.0044272905215620995, + -0.04474155232310295, + 0.002131716813892126, + 0.01773490570485592, + -0.024920862168073654, + -0.04462852701544762, + 0.032744478434324265, + 0.044231195002794266, + 0.005347316153347492, + 0.024448217824101448, + 0.013261229731142521, + -0.006979335565119982, + -0.07677704095840454, + 0.015059893019497395, + 0.09205769002437592, + 0.04102069139480591, + 0.0022566725965589285, + 0.021441882476210594, + 0.0715286135673523, + -0.011981172487139702, + 0.013889167457818985, + 0.022508835420012474, + -0.027578353881835938, + 0.0047787632793188095, + -0.006716171279549599, + 0.026995839551091194, + 0.02399270236492157, + -0.007315489463508129, + -0.021914364770054817, + 0.017902743071317673, +] + +query_embedding3 = [ + 0.010542947798967361, + -0.0020771699491888285, + 0.018793586641550064, + 0.015323284082114697, + 0.020855776965618134, + -0.027744701132178307, + 0.054254867136478424, + -0.022548092529177666, + 0.01114976592361927, + -0.02701328881084919, + 0.03188479319214821, + -0.017661605030298233, + 0.0019851233810186386, + 0.04048242047429085, + -0.022234367206692696, + -0.03877898305654526, + -0.06809619814157486, + -0.004483973141759634, + 0.07192538678646088, + 0.03258777782320976, + -0.06885764002799988, + -0.01065030600875616, + 0.02601620741188526, + -0.025261731818318367, + -0.026098977774381638, + -0.08830367028713226, + 0.0049090199172496796, + 0.006491732317954302, + -0.03235504776239395, + -0.014904284849762917, + 0.03910832852125168, + 0.008180372416973114, + -0.008882002905011177, + -0.028500935062766075, + -0.005907626356929541, + 0.08642354607582092, + -0.025083258748054504, + 0.028573770076036453, + 0.005551688373088837, + 0.028575535863637924, + 0.027835840359330177, + -0.01694948971271515, + 0.03894244506955147, + -0.00702495314180851, + 0.003198516322299838, + 0.005768909119069576, + -0.027666108682751656, + 0.045704301446676254, + 0.00855960976332426, + -0.03772832453250885, + 0.01113964058458805, + -0.006848837714642286, + 0.0031126488465815783, + 0.021760165691375732, + 0.00305558112449944, + 0.027835113927721977, + -0.02689148113131523, + -0.02474796772003174, + -0.001405426301062107, + -0.017837561666965485, + 0.005955921020358801, + 0.026807915419340134, + 0.02563514932990074, + -0.04626566916704178, + 0.004874375648796558, + 0.012400802224874496, + -0.060049138963222504, + -0.04084951803088188, + 0.018301483243703842, + -0.05275797098875046, + 0.0086642662063241, + 0.03990742936730385, + 0.019040320068597794, + 0.008621668443083763, + 0.0724521055817604, + 0.0412990003824234, + 0.0014013727195560932, + 0.06253764778375626, + 0.04116380214691162, + -0.03582260012626648, + -0.06224026530981064, + -0.02725234627723694, + -0.0928601399064064, + -0.07584880292415619, + -0.018580840900540352, + 0.02621578238904476, + 0.05248001962900162, + 0.017418449744582176, + -0.008641145192086697, + 0.018957287073135376, + -0.03877270966768265, + -0.06306338310241699, + 0.007788477465510368, + 0.04999104142189026, + -0.03251931816339493, + 0.008869366720318794, + -0.03268330171704292, + -0.005828124471008778, + -0.026510341092944145, + -0.009969801642000675, + 0.0044481391087174416, + -0.034640274941921234, + 0.03356659412384033, + -0.014506028033792973, + 0.04732068255543709, + -0.011050601489841938, + -0.004203138407319784, + 0.03990521654486656, + -0.041007958352565765, + -0.07893070578575134, + -0.05996153876185417, + 0.014063318260014057, + -0.0026169843040406704, + 0.02719777822494507, + -0.015427917242050171, + -0.02064945176243782, + 0.007363075856119394, + -0.03320041671395302, + 0.018084213137626648, + 0.023733800277113914, + -0.030606912449002266, + 0.02048870362341404, + 0.02402838133275509, + 0.005973761901259422, + 0.054204218089580536, + -0.0030790558084845543, + 0.004673156887292862, + -0.027416644617915154, + -0.04442985728383064, + 0.012847314588725567, + 0.07748882472515106, + 0.014493257738649845, + 0.004495652858167887, + -0.04001886025071144, + -0.036252908408641815, + 0.05335517227649689, + -0.01777976006269455, + 0.01082952693104744, + 0.01921195350587368, + 0.03392081335186958, + -0.042148079723119736, + -0.03388960659503937, + 0.007531383074820042, + 0.018161674961447716, + 0.03656009957194328, + -0.027102850377559662, + 0.02251628041267395, + -0.012046369723975658, + -0.05348425731062889, + 0.0022497086320072412, + 0.04016721993684769, + -0.01717129535973072, + 0.009544780477881432, + 0.02665960043668747, + 0.08562447875738144, + 0.057247646152973175, + 0.09216198325157166, + 0.02830491214990616, + -0.013137255795300007, + -0.07119007408618927, + -0.029031438753008842, + 0.02400599606335163, + 0.0208907388150692, + -0.00500252190977335, + 0.02207385003566742, + -0.03819321095943451, + -0.006595571991056204, + -0.03734014928340912, + -0.007158266380429268, + 0.016129007562994957, + 0.01862095668911934, + -0.11248142272233963, + -0.04325195029377937, + -0.04442116618156433, + 0.07084795832633972, + -0.05036599189043045, + 0.0002208968944614753, + -0.0015836356906220317, + 0.004539810121059418, + -0.02397581934928894, + -0.014102368615567684, + -0.023190686479210854, + 0.03535286337137222, + -0.04591631889343262, + -0.050178974866867065, + -0.01359744742512703, + 0.025772321969270706, + -0.06363644450902939, + -0.03543799743056297, + 0.07043260335922241, + -0.014484401792287827, + -0.012782412581145763, + 0.01116127334535122, + -0.05494656041264534, + -0.002786465920507908, + -0.002305548870936036, + 0.011700322851538658, + -0.11845295876264572, + -0.011913647875189781, + 0.04774351045489311, + -0.013436089269816875, + -0.01566474139690399, + 0.02157527767121792, + 0.006863899063318968, + -0.012185136787593365, + -0.0026727840304374695, + -0.08895088732242584, + 0.003419826738536358, + 0.07213828712701797, + -0.016972415149211884, + 0.00856101792305708, + 0.001426316681317985, + 0.09427885711193085, + 0.01850116066634655, + -0.0258034560829401, + -0.04975779727101326, + 0.014081566594541073, + -0.03875066339969635, + -0.06455642729997635, + -0.03468679264187813, + 0.015874363481998444, + -0.020243149250745773, + 0.035441748797893524, + 0.054731763899326324, + 0.01801624707877636, + -0.005626743193715811, + 0.028992490842938423, + 0.006307659205049276, + 0.0319247767329216, + 0.002187710953876376, + 0.0065626646392047405, + -0.012596727348864079, + 0.057705774903297424, + -0.026091232895851135, + 0.030690236017107964, + 0.02947114408016205, + 0.018958140164613724, + -0.007928173989057541, + -0.013222036883234978, + -0.03803595155477524, + 0.0013288946356624365, + 0.09856755286455154, + 0.014013550244271755, + 0.07894343137741089, + -0.02690303884446621, + -0.003988398239016533, + -0.0130416639149189, + 0.042919766157865524, + 0.05932505428791046, + -0.035565365105867386, + 0.035141583532094955, + -0.04124683886766434, + 0.025722447782754898, + -0.00018550716049503535, + -0.005109016317874193, + 0.033928681164979935, + 0.00565310986712575, + 0.04128587618470192, + 0.007276812102645636, + -0.025259966030716896, + 0.032601892948150635, + 0.016339223831892014, + 0.028560452163219452, + 0.13033530116081238, + -0.029234036803245544, + -0.006833497900515795, + -0.03143247589468956, + -0.012883774004876614, + 0.03338552638888359, + -0.057341158390045166, + -0.01174136996269226, + -0.0073961601592600346, + 0.03528213128447533, + 0.035989999771118164, + -0.037950076162815094, + 0.005264998879283667, + -0.04013827070593834, + 0.01746419444680214, + -0.0018648888217285275, + 0.04137907922267914, + -0.004513342399150133, + 0.012807865627110004, + 0.010365020483732224, + 0.037427470088005066, + -0.002865932183340192, + -0.0010766880586743355, + -0.04416626691818237, + 0.021367965266108513, + -0.05103495717048645, + -0.015714535489678383, + -0.030045492574572563, + 0.020174261182546616, + -0.036388009786605835, + 0.07772187143564224, + -0.021702803671360016, + -0.04465419054031372, + 0.04566051438450813, + -0.034563228487968445, + 0.01336362212896347, + 0.02437947504222393, + 0.0003132100682705641, + 0.0008901790715754032, + -0.02403002604842186, + -0.06205974146723747, + 0.0011670388048514724, + 0.011326261796057224, + -0.00750376982614398, + -0.00492094224318862, + 0.02063891850411892, + -0.01290293037891388, + 0.0344778448343277, + 0.02274216338992119, + 0.023453932255506516, + -0.0059125120751559734, + -0.011719446629285812, + 0.07904659956693649, + 0.008855306543409824, + -0.04290352389216423, + -0.08023841679096222, + 0.02476671151816845, + -0.01854325272142887, + -0.002190910978242755, + 0.06412454694509506, + -0.008029614575207233, + 0.01590806618332863, + -0.028129110112786293, + -0.021355995908379555, + 0.012765574268996716, + 0.09463607519865036, + -0.06958933174610138, + -0.02119147591292858, + 0.02453245036303997, + -0.005154046695679426, + -0.0077933818101882935, + 0.011605029925704002, + 0.009440272115170956, + 0.019215304404497147, + 0.06640348583459854, + 0.02133198082447052, + -0.08007435500621796, + -0.0028622981626540422, + -0.0028950911946594715, + -0.037916556000709534, + -0.018876947462558746, + -0.013363506644964218, + 0.0535924918949604, + -0.04713330790400505, + -0.040017012506723404, + 0.008122353814542294, + -0.023449432104825974, + 0.03991822153329849, + 6.734774069627747e-05, + -0.012273556552827358, + 0.003721225541085005, + 0.0016754773678258061, + -0.011123294942080975, + 0.0019946210086345673, + 0.006982120685279369, + 0.029747584834694862, + -0.013039481826126575, + -0.03484058752655983, + 0.022132227197289467, + -0.0546797476708889, + 0.015616540797054768, + 0.023645279929041862, + -0.004792783875018358, + -0.06951714307069778, + 0.02854088507592678, + 0.04693328216671944, + -0.0006264290423132479, + 0.007349343970417976, + 0.015109053812921047, + 0.003017974551767111, + 0.020248563960194588, + -0.0726543590426445, + 0.01134587824344635, + 0.0005060675903223455, + 0.01829889789223671, + 0.04753483459353447, + -0.0037315706722438335, + -0.013771136291325092, + 0.026760051026940346, + 0.00406580651178956, + -0.03558425232768059, + -0.005299488548189402, + 0.018526272848248482, + 0.045592159032821655, + 0.019966932013630867, + 0.018006660044193268, + -0.05187966674566269, + 0.01618654653429985, + 0.026056606322526932, + 0.022463358938694, + -0.01645507477223873, + -0.017413437366485596, + 0.05479249358177185, + -0.014588613994419575, + 0.012588215991854668, + -0.03574773669242859, + -0.016849415376782417, + 0.015653977170586586, + -0.0023553497157990932, + -0.06709419935941696, + -0.07179543375968933, + 0.015331734903156757, + 0.01766319014132023, + -0.007319381460547447, + 0.0189521461725235, + 0.019614940509200096, + -0.08486206829547882, + 0.0007858230965211987, + -0.0036041629500687122, + 0.014080874621868134, + 0.06779641658067703, + 0.03182194381952286, + -0.04642670601606369, + 0.004083056468516588, + -0.06267423182725906, + -0.0324474573135376, + 0.019781235605478287, + 0.032323069870471954, + 0.0070039681158959866, + -0.005001536570489407, + 0.009073197841644287, + 0.034770116209983826, + 4.4110685848863795e-05, + -0.09198522567749023, + 0.016849718987941742, + -0.03548656404018402, + -0.0692531019449234, + 0.018414774909615517, + -0.0921187475323677, + -0.015344605781137943, + -0.04134054109454155, + -0.028480011969804764, + -0.08146455883979797, + 0.09168414771556854, + 0.07998357713222504, + 0.026014341041445732, + 0.017937038093805313, + -0.028883034363389015, + 0.03057144582271576, + -0.010724442079663277, + 0.018125038594007492, + 0.029578905552625656, + -0.024579638615250587, + -0.07526443898677826, + -0.016231250017881393, + -0.06456200778484344, + -0.030072860419750214, + -0.022895049303770065, + 0.00415444141253829, + 0.01151253841817379, + 0.06331072002649307, + -0.025500191375613213, + -0.00053714046953246, + 0.025350533425807953, + 0.0055648707784712315, + 0.0021499800495803356, + -0.04386467859148979, + -0.02675274945795536, + -0.011274125427007675, + -0.01867513172328472, + 0.025913124904036522, + -0.023076586425304413, + -0.03464184328913689, + 0.011390935629606247, + 0.0028527271933853626, + -0.0400318019092083, + 0.025248177349567413, + -0.04997679218649864, + 0.020129835233092308, + -0.012148474343121052, + 0.014167075976729393, + 0.017614644020795822, + 0.01582793891429901, + 0.053372036665678024, + 0.07793024927377701, + -0.03784414380788803, + -0.028109664097428322, + -0.014291783794760704, + 0.027021605521440506, + 0.02588130347430706, + -0.04984234645962715, + -0.01770542934536934, + -0.008349047042429447, + 0.04212779924273491, + 0.0053593749180436134, + -0.03806058689951897, + 0.036747727543115616, + 0.05757524445652962, + -0.057155463844537735, + -0.04970157518982887, + -0.055126406252384186, + 0.029877936467528343, + -0.02737145684659481, + 0.011190582066774368, + -0.01531775202602148, + 0.052095942199230194, + 0.019683949649333954, + 0.04340781271457672, + -0.003975852858275175, + 0.014913157559931278, + 0.02827552892267704, + -0.05311066657304764, + -0.011286910623311996, + 0.0062117730267345905, + -0.021665755659341812, + -0.038417086005210876, + 0.037535544484853745, + 0.0058376360684633255, + 0.06614411622285843, + -0.008359941653907299, + -0.056450869888067245, + -0.02791580930352211, + -0.01933380216360092, + -0.01675199158489704, + 0.020247725769877434, + -0.0026980696711689234, + -0.013617953285574913, + -0.008764070458710194, + -0.03527483344078064, + 0.035375695675611496, + -0.0015997681766748428, + 0.035637691617012024, + 0.01963697001338005, + 0.017015134915709496, + -0.0003604411904234439, + -0.039214011281728745, + 0.014239010401070118, + -0.02629069983959198, + 0.0385490283370018, + 0.0002026914880843833, + 0.014476795680820942, + 0.04752976819872856, + -0.07340085506439209, + 0.02503885328769684, + 0.002498525194823742, + 0.054385773837566376, + 0.06879492104053497, + -0.007840770296752453, + -0.031533658504486084, + 0.004206547047942877, + 0.02952091209590435, + 0.04527729004621506, + 0.015435987152159214, + 0.015691671520471573, + 0.027629222720861435, + 0.027335476130247116, + 0.03717225790023804, + 0.03913302347064018, + -0.007201953325420618, + -0.038456082344055176, + -0.013573899865150452, + 0.017286749556660652, + -0.009555193595588207, + -0.039228253066539764, + -0.018771562725305557, + -0.019485214725136757, + -0.05869167298078537, + 0.042072784155607224, + -0.01506104413419962, + -0.0046134754084050655, + -0.02039765939116478, + 0.012185851112008095, + -0.04585464298725128, + 0.07079082727432251, + 0.04161670804023743, + -0.014112657867372036, + 0.04570164903998375, + -0.04709532856941223, + -0.03184964880347252, + 0.014102606102824211, + 0.010880542919039726, + -0.0010067857801914215, + 0.020858198404312134, + 0.001616304274648428, + -0.027871672064065933, + -0.009556083008646965, + 0.023160360753536224, + -0.03516773879528046, + 0.008302837610244751, + -0.01353617012500763, + 0.05320126563310623, + -0.04701259359717369, + -0.017535002902150154, + -0.018479419872164726, + -0.03794485703110695, + 0.029532013460993767, + -0.01962168514728546, + 0.013537120074033737, + -0.0445764884352684, + -0.0355890728533268, + -0.013421730138361454, + -0.09442584961652756, + -0.05684971809387207, + 0.001214321469888091, + -0.011213802732527256, + 0.021285628899931908, + 0.008936009369790554, + 0.006863136775791645, + 0.015872832387685776, + 0.0485493429005146, + -0.04763637110590935, + 0.005595272406935692, + 0.03826083615422249, + 0.06484928727149963, + 0.05174949765205383, + 0.0064583332277834415, + 0.005473082885146141, + 0.03309480473399162, + 0.061267245560884476, + 0.008687039837241173, + 0.003077984554693103, + -0.0014701125910505652, + 0.00422841589897871, + -0.03934015706181526, + 0.03204263374209404, + 0.029333733022212982, + -0.005301087629050016, + 0.007751498371362686, + 0.023613551631569862, + -0.04376191645860672, + -0.0104624442756176, + 0.04873567074537277, + -0.05050220713019371, + 0.006768053397536278, + 0.04576372355222702, + -0.020884448662400246, + -0.031267423182725906, + -0.019394734874367714, + -0.09519949555397034, + -0.06667064875364304, + -0.06275929510593414, + 0.0037940307520329952, + 0.006049887277185917, + -0.02023051679134369, + -0.0015441244468092918, + 0.0719972774386406, + -0.02210680954158306, + -0.0027332452591508627, + 0.04092469811439514, + -0.036194171756505966, + 0.0028341219294816256, + -0.01672888547182083, + 0.014553734101355076, + -0.06705988943576813, + -0.056773219257593155, + 0.018284067511558533, + -0.0012927469797432423, + -0.029053328558802605, + -0.0294451043009758, + -0.006686860229820013, + -0.07940531522035599, + 0.01285732164978981, + 0.030497534200549126, + -0.019285226240754128, + 0.02499590441584587, + -0.024998806416988373, + 0.046604398638010025, + 0.00456125196069479, + -0.0273160170763731, + -0.006036459002643824, + 0.05902529135346413, + -0.06650868058204651, + 0.02275759167969227, + 0.020499039441347122, + 0.0619879812002182, + 0.027179839089512825, + 0.02172078751027584, + -0.009773382917046547, + -0.06453000009059906, + 0.04223477467894554, + -0.027186917141079903, + 0.025517649948596954, + 0.009861636906862259, + -0.00415257690474391, + 0.00037013995461165905, + 0.011218744330108166, + -0.0076008932664990425, + -0.07056346535682678, + -0.01989125646650791, + 0.0023018799256533384, + -0.0039259023033082485, + 0.036238156259059906, + -0.027882106602191925, + -0.0005035923677496612, + 0.02293340489268303, + -0.023957427591085434, + -0.0011390234576538205, + 0.0310504250228405, + 0.031994838267564774, + -0.014038464985787868, + -0.032214924693107605, + -0.044814836233854294, + -0.05194795876741409, + -0.02142512798309326, + 0.04763603210449219, + -0.056629836559295654, + 0.005412807688117027, + -0.05006266385316849, + 0.0285593681037426, + 0.052619025111198425, + 0.014774417504668236, + 0.03433847799897194, + -0.04708310216665268, + -0.0752381980419159, + -0.0006509265513159335, + -0.0514691099524498, + -0.013008086942136288, + 0.0038416720926761627, + -0.0593993179500103, + 0.028144342824816704, + 0.044867511838674545, + 0.0027947607450187206, + 0.03446776419878006, + -0.028873153030872345, + 0.01712701842188835, + -0.04372264817357063, + 0.038617007434368134, + -0.025441637262701988, + 0.021534765139222145, + 0.07294990867376328, + -0.05809745192527771, + -0.017783673480153084, + -0.03648945316672325, + -0.01126911211758852, + -0.013493646867573261, + -0.021482286974787712, + 0.01550940703600645, + -0.08124933391809464, + -0.04867582768201828, + 0.08051152527332306, + 0.04546916484832764, + -0.0038702557794749737, + -0.03737856447696686, + 0.027614301070570946, + -0.015709565952420235, + 0.06368324160575867, + -0.02034878358244896, + 0.007513822987675667, + 0.021807905286550522, + -0.0018058198038488626, + -0.03278772532939911, + 0.04744148254394531, + -0.0041910866275429726, + 0.011152463965117931, + -0.06345872581005096, + 0.008331837132573128, + -0.0465482659637928, + -0.059423308819532394, + 0.004401106853038073, + 0.04347091168165207, + 0.04015486687421799, + -0.0498359352350235, + 0.06830709427595139, + 0.02497447282075882, + 0.043160878121852875, + 0.0036167881917208433, + 0.015616455115377903, + -0.010447202250361443, + -0.003197269979864359, + -0.036088019609451294, + 0.052625950425863266, + 0.019057126715779305, + 0.009622062556445599, + -0.057408180087804794, + 0.007988927885890007, +] diff --git a/retrieval_service/datastore/providers/utils.py b/retrieval_service/datastore/providers/utils.py new file mode 100644 index 00000000..bbed2d05 --- /dev/null +++ b/retrieval_service/datastore/providers/utils.py @@ -0,0 +1,22 @@ +# Copyright 2023 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + + +def get_env_var(key: str, desc: str) -> str: + v = os.environ.get(key) + if v is None: + raise ValueError(f"Must set env var {key} to: {desc}") + return v