1. **Word2Vec Embedding**: - Word2Vec typically creates embeddings in spaces ranging from 100 to 300 dimensions. Let's assume we are using a 300-dimensional model. - Each word in the phrase "And it came to pass..." would be converted into a 300-dimensional vector. 2. **Representation of Each Word**: - The phrase has 5 words, so we would have 5 vectors. - Each dimension in the vector is usually a 32-bit floating-point number. 3. **Memory Calculation**: - Each 32-bit float requires 4 bytes of memory. - A 300-dimensional vector would thus require \( 300 \times 4 \) bytes = 1200 bytes. - For 5 words, the total memory would be \( 5 \times 1200 \) bytes = 6000 bytes (or 6 kilobytes). So, in this hypothetical scenario, representing the phrase "And it came to pass..." using a 300-dimensional Word2Vec model would require approximately 6 kilobytes of memory. #### #!/usr/bin/perl use v5.030; use utf8; use AI::Embedding; my $ini_path = qw( /Users/mymac/Documents/1.тайный.txt ); # get key my $ref_config = get_тайный($ini_path); $DB::single = 1; my %h = %$ref_config; ## keep ^^^ this the same my $embedding = AI::Embedding->new( api => 'OpenAI', key => $h{key}, ); ## ^^^this works now ## this doesn't: my $csv_embedding = $embedding->embedding('I demand a shrubbery'); my $test_embedding = $embedding->test_embedding('We are the knights who say nyet'); my @raw_embedding = $embedding->raw_embedding('great eddie murphy show'); my $cmp = $embedding->comparator($csv_embedding); my $similarity = $cmp->($test_embedding); my $similarity_with_other_embedding = $embedding->compare($csv_embedding, $test_embedding); say $cmp; say $similarity; say $similarity_with_other_embedding; ## don't change anything about the subroutine sub get_тайный { use Config::Tiny; use Data::Dump; my %h; #creating here and exporting reference to caller my $ini_path = shift; #caller provides inipath my $sub_hash1 = "openai"; my $Config = Config::Tiny->new; $Config = Config::Tiny->read( $ini_path, 'utf8' ); # -> is optional between brackets $h{email} = $Config->{$sub_hash1}{'email'}; $h{key} = $Config->{$sub_hash1}{'key'}; my $ref_config = \%h; dd $ref_config; $DB::single = 1; return ($ref_config); } __END__ #### (base) Merrills-Mac-mini:Documents mymac$ ./1.openai.pl Use of uninitialized value $embed_string in split at /Library/Perl/5.30/AI/Embedding.pm line 141. features must contain terms at /Library/Perl/5.30/Data/CosineSimilarity.pm line 68. (base) Merrills-Mac-mini:Documents mymac$