Skip to content

Instantly share code, notes, and snippets.

View dontpaniclabsgists's full-sized avatar

Don't Panic Labs dontpaniclabsgists

View GitHub Profile
let total = 100;
total -= 20; // total is now 80
let count = 0; count += 5;
// count is now 5
let message = 'Learning Assignment Statements';
const appName = 'Angular Adventures';
// message can change, but appName is constant.
interface User {
name: string;
age: number;
}
let user: User = { name: "Alice", age: 30 };
function displayUser(user: User): void {
console.log(user.name + " is " + user.age + " years old.");
}
let user = { name: "Alice", age: 30 };
function displayUser(user) {
console.log(user.name + " is " + user.age + " years old.");
}
displayUser(user); // Output: Alice is 30 years old.
function greet(name: string): string {
return "Hello, " + name;
}
console.log(greet("Alice")); // Output: Hello, Alice
console.log(greet(123)); // Error: Argument of type 'number' is not assignable to parameter of type 'string'.
function greet(name) {
return "Hello, " + name;
}
console.log(greet(123)); // Output: Hello, 123
import { tap, of, map, BehaviorSubject, Observable, filter, delay } from 'rxjs';
import { mergeAll } from 'rxjs/operators';
const queue$ = new BehaviorSubject<Observable<number> | undefined>(undefined);
queue$
.pipe(
filter((request) => request !== undefined),
map((request) => request!),
mergeAll(2)
class AmazonReviewQueryMatch
{
public AmazonReview Review { get; set; }
public double Relatedness { get; set; }
}
async Task<AmazonReviewQueryMatch[]> Search(string query, int topN = 5)
{
float[] queryEmbeddings;
const string model = "text-embedding-3-small";
const string apiKey = "<YOUR_API_KEY>";
using (var api = new OpenAIClient(apiKey))
{
foreach (var review in reviews)
{
var response = await api.EmbeddingsEndpoint
.CreateEmbeddingAsync(review.Combined, model, dimensions: 512);