go to post Robert Cemper · Mar 27, 2024 By SQL priniciple: any straight name is meant to be a COLUMN of the actual table. eg. Embeddingsbut an external HostVariable is designated by an initial : (colon) e.g. : new_embedding_str or :params This seems to be the deeper cause your problem in addition I'd suggest to add print(new_embedding_str) to verify its format. (one of my problems. Furthermore, take a closer look to this example:iris-vector-search/blob/main/demo/sql_demo.ipynb
go to post Robert Cemper · Mar 27, 2024 Sounds promising:in my COS example, I had to use pure String parameters like "0.54456,0.6987646,0.I123" happened by accident, more for reading and debugging
go to post Robert Cemper · Mar 26, 2024 I use a similar setup in my example in OEX ,Especially with TO_VECTOR() I ran into problems if I didn't add the explicittype and size of the vector. e.g. TO_VECTOR("..........",,DOUBLE,384)as model all-MiniLM-L6-v2 produces exactly that type and size:Don't ask for why. I just used the proposed example
go to post Robert Cemper · Mar 26, 2024 - Thank you @Andrew Wardly:Your observation is pretty correct. It derives from a late Latin dialect spokenaround Locarno (today Switzerland) around 1600. Eventually starting with a very sharp S.So the mental link to "Semper Fidelis" is pretty close and matches well.
go to post Robert Cemper · Mar 22, 2024 eventually better to check for longer lists USER>s x=$lfs("Purple,Black,Yellow,Pink") USER>s y=$lfs("Red,Green,Orange,Yellow") USER>f z="y","x" f i=1:1:$ll(@z) i $i(dif($li(@z,i))) USER>zw dif dif("Black")=1 dif("Green")=1 dif("Orange")=1 dif("Pink")=1 dif("Purple")=1 dif("Red")=1 dif("Yellow")=2 looping with $o() over dif() allows programmatic check
go to post Robert Cemper · Mar 22, 2024 set x="1,4,6,8,9,12" while x>0 {write +x,! set x=$piece(x,",",2,*) } x only !
go to post Robert Cemper · Mar 21, 2024 set X="1,4,6,8,9,12" for i=1:1:$L(X,",") set Y=$p(X,",",i) write Y,!
go to post Robert Cemper · Mar 21, 2024 I just realized that $vector() is a left+right function similar to $li() set $vector(target,...) = .... to set set vec = $vector(...) to get
go to post Robert Cemper · Mar 21, 2024 Thanks. I just looked for TO_VECTOR but failed at that timehttps://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...covers my needs.
go to post Robert Cemper · Mar 21, 2024 Thanks.I was looking for this but couldn't detect.https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_fvector It is not on https://docs.intersystems.com/iris20241/csp/docbookbut on https://docs.intersystems.com/irislatest/csp/docbook which is not covered by Doc Search
go to post Robert Cemper · Mar 21, 2024 experimenting with class %Library.Vector I found an unattractive way: ;; compose JSON array >> v USER>zw v v=[($double(.5)),($double(1.5)),($double(2.2000000000000001776))] ; <DYNAMIC ARRAY> USER>set vec=##class(%Vector).OdbcToLogical(v) USER>zw vec vec={"type":"double", "count":3, "length":3, "vector":[$double(.5),$double(1.5),$double(2.2000000000000001776)]} ; <VECTOR> Applying OdbcToLogical was really shocking
go to post Robert Cemper · Mar 21, 2024 Indeed:I was unable to locate an official docu on new SQL function TO_VECTOR()Similarly, I found no documentation on how to set a VECTOR Datetype on pure object levele.g. obj.vectorproperty = ?????? or obj.vectorproperty.set(?????)I tried a bit with DisplayToLogical but gave up in the end
go to post Robert Cemper · Mar 21, 2024 Routine names starting with %Z or %z go to namespace %SYS automatically:Though by mapping it to namespace %ALL any routine can be available in any namespace
go to post Robert Cemper · Mar 20, 2024 Hi al!,Just returning from some private troubleshooting I'm deeply moved and thankful for this feedback.It's once more a motivation to continue my activities.Sometimes I'm insisting on small pieces that may bypass general attention.Though servicing customers - and I understand you all as my customers -requires to take care also of the small and often annoying pieces. Special big THANKS to the brilliant team behind the DC+OEX+GM facility.YOU ARE GREAT. 💐🌷🌺🌸💮🌼🌻
go to post Robert Cemper · Mar 13, 2024 Thank you for publishing my attempts and the clear message: There is not just 1 solution. !
go to post Robert Cemper · Mar 7, 2024 Special thanks for Step 4 - Dockerthis allows you to train the technical presentation over and over in the same wayNothing is more disturbing than a presenter who seems to see the code first time 😎
go to post Robert Cemper · Mar 5, 2024 you are in Caché so this might help:http://localhost:57772/csp/docbook/DocBook.UI.Page.cls?KEY=GIOD_rmsseqfilesUSE file:positionthe equivalent in %Stream,Object is MoveTo • method MoveTo(position As %Integer) as %Boolean Move to this position in the stream. If this suceeds then return true, else return false. Note this implementation is not efficient because it searches from the start of the stream, it can be improved upon in specific subclasses. Note that moving to position 1 will be at the start of the stream, position 2 will be at the second character of the stream, etc. And then you do your Read or Find..