70bf21e064
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
Handle Changesets / Handle Changesets (push) Has been cancelled
Semgrep OSS scan / semgrep-oss (push) Has been cancelled
60 lines
1.8 KiB
JavaScript
60 lines
1.8 KiB
JavaScript
export default {
|
|
async fetch(request, env, ctx) {
|
|
const url = new URL(request.url);
|
|
if (url.pathname === "/insert") {
|
|
await env.VECTORIZE_BINDING.insert([
|
|
{
|
|
id: "a44706aa-a366-48bc-8cc1-3feffd87d548",
|
|
values: [
|
|
0.2321, 0.8121, 0.6315, 0.6151, 0.4121, 0.1512, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
],
|
|
metadata: { text: "Peter Piper picked a peck of pickled peppers" },
|
|
},
|
|
]);
|
|
await env.VECTORIZE_BINDING.insert([
|
|
{
|
|
id: "b0daca4a-ffd8-4865-926b-e24800af2a2d",
|
|
values: [
|
|
0.2331, 1.0125, 0.6131, 0.9421, 0.9661, 0.8121, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
],
|
|
metadata: { text: "She sells seashells by the sea" },
|
|
},
|
|
]);
|
|
await env.VECTORIZE_BINDING.upsert([
|
|
{
|
|
id: "b0daca4a-ffd8-4865-926b-e24800af2a2d",
|
|
values: [
|
|
0.2331, 1.0125, 0.6131, 0.9421, 0.9661, 0.8121, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
],
|
|
metadata: { text: "She sells seashells by the seashore" },
|
|
},
|
|
]);
|
|
return new Response("inserted");
|
|
}
|
|
if (url.pathname === "/") {
|
|
let response = "";
|
|
response += JSON.stringify(
|
|
await env.VECTORIZE_BINDING.getByIds([
|
|
"a44706aa-a366-48bc-8cc1-3feffd87d548",
|
|
])
|
|
);
|
|
|
|
const queryVector = [
|
|
0.13, 0.25, 0.44, 0.53, 0.62, 0.41, 0.59, 0.68, 0.29, 0.82, 0.37, 0.5,
|
|
0.74, 0.46, 0.57, 0.64, 0.28, 0.61, 0.73, 0.35, 0.78, 0.58, 0.42, 0.32,
|
|
0.77, 0.65, 0.49, 0.54, 0.31, 0.29, 0.71, 0.57,
|
|
]; // vector of dimension 32
|
|
const matches = await env.VECTORIZE_BINDING.query(queryVector, {
|
|
topK: 3,
|
|
returnValues: true,
|
|
returnMetadata: "all",
|
|
});
|
|
|
|
return new Response(response);
|
|
}
|
|
},
|
|
};
|