This commit is contained in:
parent
3b7e9da9cb
commit
2112424a80
9 changed files with 227 additions and 103 deletions
100
.vstags
100
.vstags
|
@ -9849,8 +9849,12 @@ Object::PadX::Role::AutoMarshal::unimport local/lib/perl5/Object/PadX/Role/AutoM
|
||||||
OlsonVersion local/lib/perl5/DateTime/TimeZone/Catalog.pm 1865;" s
|
OlsonVersion local/lib/perl5/DateTime/TimeZone/Catalog.pm 1865;" s
|
||||||
OpenAIAsync .build/0T4wbFlmwf/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/0T4wbFlmwf/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/0T4wbFlmwf/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/0T4wbFlmwf/lib/OpenAIAsync.pm 1;" p
|
||||||
|
OpenAIAsync .build/2oNz8Mp68u/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
|
OpenAIAsync .build/2oNz8Mp68u/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/AcmKa2ZbCJ/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/AcmKa2ZbCJ/lib/OpenAIAsync.pm 1;" p
|
||||||
|
OpenAIAsync .build/JhaXDkLtkw/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
|
OpenAIAsync .build/JhaXDkLtkw/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/UPVIKQUOaN/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/UPVIKQUOaN/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/UPVIKQUOaN/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/UPVIKQUOaN/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/Xz72xzB4iA/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/Xz72xzB4iA/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
|
@ -9859,13 +9863,17 @@ OpenAIAsync .build/bgXXjrPaza/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/bgXXjrPaza/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/bgXXjrPaza/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/mKmyAW37h1/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/mKmyAW37h1/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/mKmyAW37h1/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/mKmyAW37h1/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/previous/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/t7Cb8f47yj/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/previous/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/t7Cb8f47yj/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/trQp7H7Uyl/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/trQp7H7Uyl/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/trQp7H7Uyl/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/trQp7H7Uyl/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/wX6DkQhw6E/blib/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/wX6DkQhw6E/blib/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync .build/wX6DkQhw6E/lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync .build/wX6DkQhw6E/lib/OpenAIAsync.pm 1;" p
|
||||||
OpenAIAsync lib/OpenAIAsync.pm 1;" p
|
OpenAIAsync lib/OpenAIAsync.pm 1;" p
|
||||||
|
OpenAIAsync::Client .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
|
OpenAIAsync::Client .build/2oNz8Mp68u/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
|
OpenAIAsync::Client .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
|
OpenAIAsync::Client .build/JhaXDkLtkw/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/UPVIKQUOaN/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/UPVIKQUOaN/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
|
@ -9874,13 +9882,17 @@ OpenAIAsync::Client .build/bgXXjrPaza/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/bgXXjrPaza/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/bgXXjrPaza/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/mKmyAW37h1/blib/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/mKmyAW37h1/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/mKmyAW37h1/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/mKmyAW37h1/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/previous/blib/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client .build/previous/lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client .build/t7Cb8f47yj/lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Client lib/OpenAIAsync/Client.pm 1;" p
|
OpenAIAsync::Client lib/OpenAIAsync/Client.pm 1;" p
|
||||||
OpenAIAsync::Types .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/0T4wbFlmwf/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/0T4wbFlmwf/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
OpenAIAsync::Types .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
OpenAIAsync::Types .build/2oNz8Mp68u/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
OpenAIAsync::Types .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
OpenAIAsync::Types .build/JhaXDkLtkw/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/UPVIKQUOaN/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/UPVIKQUOaN/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
@ -9889,8 +9901,8 @@ OpenAIAsync::Types .build/bgXXjrPaza/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/bgXXjrPaza/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/bgXXjrPaza/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/mKmyAW37h1/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/mKmyAW37h1/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/previous/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/previous/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/t7Cb8f47yj/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/trQp7H7Uyl/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/trQp7H7Uyl/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
|
@ -9898,10 +9910,14 @@ OpenAIAsync::Types .build/wX6DkQhw6E/lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types lib/OpenAIAsync/Types.pm 1;" p
|
OpenAIAsync::Types lib/OpenAIAsync/Types.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Requests .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Requests .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Requests .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Requests .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/Xz72xzB4iA/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
@ -9916,8 +9932,8 @@ OpenAIAsync::Types::Requests .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types/Reques
|
||||||
OpenAIAsync::Types::Requests .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/previous/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
|
@ -9926,10 +9942,14 @@ OpenAIAsync::Types::Requests lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests:: .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
OpenAIAsync::Types::Requests:: .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 1;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 169;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
|
@ -9945,19 +9965,23 @@ OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/mKmyAW37h1/
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/previous/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 170;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union lib/OpenAIAsync/Types/Requests.pm 170;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union lib/OpenAIAsync/Types/Requests.pm 186;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 93;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
|
@ -9973,19 +9997,23 @@ OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .buil
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/previous/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 94;" p
|
||||||
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion lib/OpenAIAsync/Types/Requests.pm 94;" p
|
OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ContentUnion lib/OpenAIAsync/Types/Requests.pm 110;" p
|
||||||
OpenAIAsync::Types::Results .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Results .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Results .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/4DgDOdekNW/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/4DgDOdekNW/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Results .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
OpenAIAsync::Types::Results .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
@ -10001,8 +10029,8 @@ OpenAIAsync::Types::Results .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types/Results
|
||||||
OpenAIAsync::Types::Results .build/mKmyAW37h1/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/mKmyAW37h1/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/nb3podVIwj/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/nb3podVIwj/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/previous/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/previous/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
OpenAIAsync::Types::Results .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
OpenAIAsync::Types::Results .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Results.pm 1;" p
|
||||||
|
@ -28052,6 +28080,10 @@ new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
new .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
new .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
new .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
new .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
||||||
new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
|
@ -28060,6 +28092,10 @@ new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
new .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
new .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
new .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
new .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
||||||
new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
@ -28090,10 +28126,10 @@ new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/previous/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/previous/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
@ -28102,8 +28138,8 @@ new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
new lib/OpenAIAsync/Types/Requests.pm 173;" s
|
new lib/OpenAIAsync/Types/Requests.pm 113;" s
|
||||||
new lib/OpenAIAsync/Types/Requests.pm 97;" s
|
new lib/OpenAIAsync/Types/Requests.pm 189;" s
|
||||||
new local/bin/lwp-request 231;" s
|
new local/bin/lwp-request 231;" s
|
||||||
new local/lib/perl5/Algorithm/Diff.pm 580;" s
|
new local/lib/perl5/Algorithm/Diff.pm 580;" s
|
||||||
new local/lib/perl5/App/Cmd.pm 163;" s
|
new local/lib/perl5/App/Cmd.pm 163;" s
|
||||||
|
@ -28894,10 +28930,14 @@ onlyres local/lib/perl5/List/SomeUtils/PP.pm 160;" s
|
||||||
onlyval local/lib/perl5/List/SomeUtils/PP.pm 148;" s
|
onlyval local/lib/perl5/List/SomeUtils/PP.pm 148;" s
|
||||||
ontent::new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
ontent::new .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
ontent::new .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
ontent::new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
ontent::new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
ontent::new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
ontent::new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
ontent::new .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
ontent::new .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
ontent::new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 172;" s
|
||||||
ontent::new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
|
@ -28913,13 +28953,13 @@ ontent::new .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/previous/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 173;" s
|
||||||
ontent::new lib/OpenAIAsync/Types/Requests.pm 173;" s
|
ontent::new lib/OpenAIAsync/Types/Requests.pm 189;" s
|
||||||
oo local/lib/perl5/oo.pm 1;" p
|
oo local/lib/perl5/oo.pm 1;" p
|
||||||
oo::import local/lib/perl5/oo.pm 22;" s
|
oo::import local/lib/perl5/oo.pm 22;" s
|
||||||
oo::moo local/lib/perl5/oo.pm 7;" s
|
oo::moo local/lib/perl5/oo.pm 7;" s
|
||||||
|
@ -31559,10 +31599,14 @@ xlp_collapsed_lengths_initialize local/lib/perl5/Perl/Tidy/Formatter.pm 13897;"
|
||||||
xlp_tweak local/lib/perl5/Perl/Tidy/Formatter.pm 29023;" s
|
xlp_tweak local/lib/perl5/Perl/Tidy/Formatter.pm 29023;" s
|
||||||
y::new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/0T4wbFlmwf/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/0T4wbFlmwf/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
y::new .build/2oNz8Mp68u/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
y::new .build/2oNz8Mp68u/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
y::new .build/4DgDOdekNW/blib/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
||||||
y::new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
y::new .build/4DgDOdekNW/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
||||||
y::new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/AcmKa2ZbCJ/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/AcmKa2ZbCJ/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
y::new .build/JhaXDkLtkw/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
y::new .build/JhaXDkLtkw/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
y::new .build/NfFNPyy4iR/lib/OpenAIAsync/Types/Requests.pm 96;" s
|
||||||
y::new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/UPVIKQUOaN/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/UPVIKQUOaN/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
|
@ -31578,13 +31622,13 @@ y::new .build/mKmyAW37h1/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/mKmyAW37h1/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/nb3podVIwj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/nb3podVIwj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/previous/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/t7Cb8f47yj/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/previous/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/t7Cb8f47yj/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/trQp7H7Uyl/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/trQp7H7Uyl/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/wX6DkQhw6E/blib/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new .build/wX6DkQhw6E/lib/OpenAIAsync/Types/Requests.pm 97;" s
|
||||||
y::new lib/OpenAIAsync/Types/Requests.pm 97;" s
|
y::new lib/OpenAIAsync/Types/Requests.pm 113;" s
|
||||||
y_n local/lib/perl5/Module/Build/Base.pm 602;" s
|
y_n local/lib/perl5/Module/Build/Base.pm 602;" s
|
||||||
year local/lib/perl5/Software/License.pm 57;" s
|
year local/lib/perl5/Software/License.pm 57;" s
|
||||||
year local/lib/perl5/x86_64-linux/DateTime.pm 767;" s
|
year local/lib/perl5/x86_64-linux/DateTime.pm 767;" s
|
||||||
|
|
|
@ -126,8 +126,23 @@ class OpenAIAsync::Client :repr(HASH) :isa(IO::Async::Notifier) :strict(params)
|
||||||
return $type_result;
|
return $type_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
async method chat($prompt) {
|
async method chat($input) {
|
||||||
...
|
if (ref($input) eq 'HASH') {
|
||||||
|
$input = OpenAIAsync::Types::Requests::ChatCompletion->new($input->%*);
|
||||||
|
} elsif (ref($input) eq 'OpenAIAsync::Types::Requests::ChatCompletion') {
|
||||||
|
# dummy, nothing to do
|
||||||
|
} else {
|
||||||
|
die "Unsupported input type [".ref($input)."]";
|
||||||
|
}
|
||||||
|
|
||||||
|
print "Making request\n";
|
||||||
|
|
||||||
|
my $data = await $self->_make_request("/completions", $input);
|
||||||
|
|
||||||
|
my $type_result = OpenAIAsync::Types::Results::ChatCompletion->new($data->%*);
|
||||||
|
|
||||||
|
return $type_result;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async method embedding($input) {
|
async method embedding($input) {
|
||||||
|
|
|
@ -13,14 +13,30 @@ role OpenAIAsync::Types::Requests::Base :does(OpenAIAsync::Types::Base) :Struct
|
||||||
|
|
||||||
#### Base Request Types
|
#### Base Request Types
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion :does(OpenAIAsync::Types::Requests::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion :does(OpenAIAsync::Types::Requests::Base) :Struct {
|
||||||
method _endpoint() {...}
|
method _endpoint() {"/chat/completion"}
|
||||||
field $messages :MarshalTo([OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union]);
|
field $messages :MarshalTo([OpenAIAsync::Types::Requests::ChatCompletion::Messages::Union]);
|
||||||
|
field $model :JSONStr = "gpt-3.5-turbo";
|
||||||
|
field $frequency_penalty :JSONNum = undefs;
|
||||||
|
field $presence_penalty :JSONNum = undef;
|
||||||
|
field $logit_bias = undef; # TODO wtf is this?
|
||||||
|
field $max_tokens :JSONNum = undef;
|
||||||
|
field $response_format :JSONStr :JSONExclude = undef; # I'm not supporting this this version yet
|
||||||
|
|
||||||
|
field $seed :JSONNum = undef;
|
||||||
|
field $stop = undef; # String, array or null, todo handle
|
||||||
|
field $stream :JSONBool = undef; # TODO handle
|
||||||
|
field $temperature :JSONNum = undef;
|
||||||
|
field $top_p :JSONNum = undef;
|
||||||
|
field $tools :JSONExclude = undef; # TODO handle this
|
||||||
|
field $tool_choice :JSONExclude = undef; # TODO handle this
|
||||||
|
|
||||||
|
field $function_call :JSONExclude = undef;
|
||||||
|
field $functions :JSONExclude = undef;s
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::Completion :does(OpenAIAsync::Types::Requests::Base) {
|
class OpenAIAsync::Types::Requests::Completion :does(OpenAIAsync::Types::Requests::Base) :Struct {
|
||||||
method _endpoint() {...}
|
method _endpoint() {"/completion"}
|
||||||
use JSON::MaybeXS; # TODO make a role that does this better?
|
|
||||||
|
|
||||||
field $model :JSONStr = "gpt-3.5-turbo"; # This is how 99% of everyone else seems to default this
|
field $model :JSONStr = "gpt-3.5-turbo"; # This is how 99% of everyone else seems to default this
|
||||||
field $prompt :JSONStr;
|
field $prompt :JSONStr;
|
||||||
|
@ -51,7 +67,7 @@ class OpenAIAsync::Types::Requests::Completion :does(OpenAIAsync::Types::Request
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::Embedding :does(OpenAIAsync::Types::Requests::Base) {
|
class OpenAIAsync::Types::Requests::Embedding :does(OpenAIAsync::Types::Requests::Base) :Struct {
|
||||||
method _endpoint() {...}
|
method _endpoint() {...}
|
||||||
field $input :JSONStr;
|
field $input :JSONStr;
|
||||||
field $model :JSONStr;
|
field $model :JSONStr;
|
||||||
|
@ -61,7 +77,7 @@ class OpenAIAsync::Types::Requests::Embedding :does(OpenAIAsync::Types::Requests
|
||||||
|
|
||||||
### Request Subtypes
|
### Request Subtypes
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant::ToolCall :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant::ToolCall :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $id :JSONStr;
|
field $id :JSONStr;
|
||||||
field $arguments :JSONStr;
|
field $arguments :JSONStr;
|
||||||
field $type :JSONStr;
|
field $type :JSONStr;
|
||||||
|
@ -73,17 +89,17 @@ class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant::Functio
|
||||||
field $name :JSONStr;
|
field $name :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::Text :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::Text :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $type :JSONStr;
|
field $type :JSONStr;
|
||||||
field $text :JSONStr;
|
field $text :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ImageUrl :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ImageUrl :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $url :JSONStr;
|
field $url :JSONStr;
|
||||||
field $detail :JSONStr = undef;
|
field $detail :JSONStr = undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::Image :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::Image :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $type :JSONStr;
|
field $type :JSONStr;
|
||||||
field $image_url :MarshalTo(OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ImageUrl);
|
field $image_url :MarshalTo(OpenAIAsync::Types::Requests::ChatCompletion::Messages::User::ImageUrl);
|
||||||
}
|
}
|
||||||
|
@ -110,7 +126,7 @@ package
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
# This particular type is more complicated than AutoMarshal can handle, so we need to
|
# This particular type is more complicated than AutoMarshal can handle, so we need to
|
||||||
# do this in a custom manner.
|
# do this in a custom manner.
|
||||||
field $role;
|
field $role;
|
||||||
|
@ -139,7 +155,7 @@ class OpenAIAsync::Types::Requests::ChatCompletion::Messages::User :does(OpenAIA
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
field $name = undef;
|
field $name = undef;
|
||||||
|
@ -147,19 +163,19 @@ class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant :does(Op
|
||||||
field $function_call :MarshalTo(OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant::FunctionCall) = undef;
|
field $function_call :MarshalTo(OpenAIAsync::Types::Requests::ChatCompletion::Messages::Assistant::FunctionCall) = undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Function :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Function :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
field $name :JSONStr;
|
field $name :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Tool :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::Tool :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
field $tool_call_id :JSONStr;
|
field $tool_call_id :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::System :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Requests::ChatCompletion::Messages::System :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
field $name :JSONStr = undef;
|
field $name :JSONStr = undef;
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
|
|
|
@ -7,31 +7,31 @@ use Object::PadX::Role::AutoMarshal;
|
||||||
use Object::PadX::Role::AutoJSON;
|
use Object::PadX::Role::AutoJSON;
|
||||||
use Object::Pad::ClassAttr::Struct;
|
use Object::Pad::ClassAttr::Struct;
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ToolCall :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ToolCall :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $id :JSONStr;
|
field $id :JSONStr;
|
||||||
field $type :JSONStr; # always "function" right now, may get expanded in the future
|
field $type :JSONStr; # always "function" right now, may get expanded in the future
|
||||||
field $function :MarshalTo(OpenAIAsync::Types::Results::FunctionCall);
|
field $function :MarshalTo(OpenAIAsync::Types::Results::FunctionCall);
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::FunctionCall :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::FunctionCall :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $arguments :JSONStr; # TODO decode the json from this directly?
|
field $arguments :JSONStr; # TODO decode the json from this directly?
|
||||||
field $name :JSONStr;
|
field $name :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ChatMessage :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChatMessage :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
field $tool_calls :MarshalTo([OpenAIAsync::Types::Results::ToolCall]) = undef; # don't think my local server provides this
|
field $tool_calls :MarshalTo([OpenAIAsync::Types::Results::ToolCall]) = undef; # don't think my local server provides this
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
field $function_call :MarshalTo(OpenAIAsync::Types::Results::FunctionCall) = undef; # Depcrecated, might still happen
|
field $function_call :MarshalTo(OpenAIAsync::Types::Results::FunctionCall) = undef; # Depcrecated, might still happen
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ChatCompletionChoices :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChatCompletionChoices :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $finish_reason :JSONStr;
|
field $finish_reason :JSONStr;
|
||||||
field $index :JSONNum;
|
field $index :JSONNum;
|
||||||
field $message :MarshalTo(OpenAIAsync::Types::Results::ChatMessage);
|
field $message :MarshalTo(OpenAIAsync::Types::Results::ChatMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ChatCompletion :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChatCompletion :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $id :JSONStr;
|
field $id :JSONStr;
|
||||||
field $choices :MarshalTo([OpenAIAsync::Types::Results::ChatCompletionChoices]);
|
field $choices :MarshalTo([OpenAIAsync::Types::Results::ChatCompletionChoices]);
|
||||||
field $created :JSONStr;
|
field $created :JSONStr;
|
||||||
|
@ -41,21 +41,21 @@ class OpenAIAsync::Types::Results::ChatCompletion :does(OpenAIAsync::Types::Base
|
||||||
field $object :JSONStr;
|
field $object :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ChunkDelta :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChunkDelta :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $content :JSONStr;
|
field $content :JSONStr;
|
||||||
field $function_call :MarshalTo(OpenAIAsync::Types::Results::FunctionCall);
|
field $function_call :MarshalTo(OpenAIAsync::Types::Results::FunctionCall);
|
||||||
field $tool_cass :MarshalTo([OpenAIAsync::Types::Results::ToolCall]);
|
field $tool_cass :MarshalTo([OpenAIAsync::Types::Results::ToolCall]);
|
||||||
field $role :JSONStr;
|
field $role :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::ChatCompletionChunkChoices :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChatCompletionChunkChoices :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $delta :MarshalTo(OpenAIAsync::Types::Results::ChunkDelta);
|
field $delta :MarshalTo(OpenAIAsync::Types::Results::ChunkDelta);
|
||||||
field $finish_reason :JSONStr;
|
field $finish_reason :JSONStr;
|
||||||
field $index :JSONStr;
|
field $index :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
# This is part of the streaming API
|
# This is part of the streaming API
|
||||||
class OpenAIAsync::Types::Results::ChatCompletionChunk :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::ChatCompletionChunk :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $id :JSONStr;
|
field $id :JSONStr;
|
||||||
field $choices :MarshalTo(OpenAIAsync::Types::Results::ChatCompletionChunkChoices);
|
field $choices :MarshalTo(OpenAIAsync::Types::Results::ChatCompletionChunkChoices);
|
||||||
field $created :JSONStr;
|
field $created :JSONStr;
|
||||||
|
@ -64,13 +64,13 @@ class OpenAIAsync::Types::Results::ChatCompletionChunk :does(OpenAIAsync::Types:
|
||||||
field $object :JSONStr;
|
field $object :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::Usage :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::Usage :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $total_tokens :JSONNum;
|
field $total_tokens :JSONNum;
|
||||||
field $prompt_tokens :JSONNum;
|
field $prompt_tokens :JSONNum;
|
||||||
field $completion_tokens :JSONNum; # look at chat completions, is this the same
|
field $completion_tokens :JSONNum; # look at chat completions, is this the same
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::LogProbs :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::LogProbs :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
# TODO what's the representation here?
|
# TODO what's the representation here?
|
||||||
field $text_offset = undef;
|
field $text_offset = undef;
|
||||||
field $token_logprobs = undef;
|
field $token_logprobs = undef;
|
||||||
|
@ -78,14 +78,14 @@ class OpenAIAsync::Types::Results::LogProbs :does(OpenAIAsync::Types::Base) {
|
||||||
field $top_logprobs = undef;
|
field $top_logprobs = undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::CompletionChoices :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::CompletionChoices :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $text :JSONStr;
|
field $text :JSONStr;
|
||||||
field $index :JSONNum;
|
field $index :JSONNum;
|
||||||
field $logprobs :MarshalTo(OpenAIAsync::Types::Results::LogProbs) = undef; # TODO make nicer type?
|
field $logprobs :MarshalTo(OpenAIAsync::Types::Results::LogProbs) = undef; # TODO make nicer type?
|
||||||
field $finish_reason :JSONStr = undef; # TODO enum? helper funcs for this class? ->is_finished?
|
field $finish_reason :JSONStr = undef; # TODO enum? helper funcs for this class? ->is_finished?
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::Completion :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::Completion :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $id :JSONStr;
|
field $id :JSONStr;
|
||||||
field $choices :MarshalTo([OpenAIAsync::Types::Results::CompletionChoices]);
|
field $choices :MarshalTo([OpenAIAsync::Types::Results::CompletionChoices]);
|
||||||
field $created :JSONStr;
|
field $created :JSONStr;
|
||||||
|
@ -95,7 +95,7 @@ class OpenAIAsync::Types::Results::Completion :does(OpenAIAsync::Types::Base) {
|
||||||
field $object :JSONStr;
|
field $object :JSONStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class OpenAIAsync::Types::Results::Embedding :does(OpenAIAsync::Types::Base) {
|
class OpenAIAsync::Types::Results::Embedding :does(OpenAIAsync::Types::Base) :Struct {
|
||||||
field $index :JSONNum;
|
field $index :JSONNum;
|
||||||
field $embedding :JSONList(JSONNum);
|
field $embedding :JSONList(JSONNum);
|
||||||
field $object :JSONStr;
|
field $object :JSONStr;
|
||||||
|
|
|
@ -6,7 +6,7 @@ use Test2::V0;
|
||||||
use OpenAIAsync::Client;
|
use OpenAIAsync::Client;
|
||||||
|
|
||||||
BEGIN {
|
BEGIN {
|
||||||
$ENV{OPENAI_API_KEY}="12345" unless $ENV{OPENAI_API_KEY}="12345";
|
$ENV{OPENAI_API_KEY}="12345" unless $ENV{OPENAI_API_KEY}eq"12345";
|
||||||
}
|
}
|
||||||
|
|
||||||
ok(lives {
|
ok(lives {
|
||||||
|
|
32
xt/01-completion-deprecated.t
Normal file
32
xt/01-completion-deprecated.t
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
|
||||||
|
use Test2::V0;
|
||||||
|
|
||||||
|
use OpenAIAsync::Client;
|
||||||
|
|
||||||
|
skip_all("Needs disclaimer to run") unless $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin();
|
||||||
|
|
||||||
|
skip_all("No api base defined") unless $ENV{OPENAI_API_BASE};
|
||||||
|
skip_all("No API key defined") unless $ENV{OPENAI_API_KEY};
|
||||||
|
|
||||||
|
exit() unless ($ENV{OPENAI_API_KEY} and $ENV{OPENAI_API_BASE} and $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin());
|
||||||
|
|
||||||
|
use IO::Async::Loop;
|
||||||
|
|
||||||
|
my $loop = IO::Async::Loop->new();
|
||||||
|
|
||||||
|
my $client;
|
||||||
|
ok(lives {
|
||||||
|
$client = OpenAIAsync::Client->new();
|
||||||
|
|
||||||
|
isa_ok($client, "OpenAIAsync::Client");
|
||||||
|
}, "basic client creation");
|
||||||
|
|
||||||
|
ok(lives {$loop->add($client);}, "Adding to loop");
|
||||||
|
|
||||||
|
my $output_future = $client->completion({max_tokens => 1024, prompt => "Tell a story about a princess named Judy and her princess sister Emmy"});
|
||||||
|
use Data::Dumper;
|
||||||
|
print Dumper($output_future->get());
|
||||||
|
|
||||||
|
done_testing();
|
49
xt/02-chat-completion.t
Normal file
49
xt/02-chat-completion.t
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
|
||||||
|
use Test2::V0;
|
||||||
|
|
||||||
|
use OpenAIAsync::Client;
|
||||||
|
|
||||||
|
skip_all("Needs disclaimer to run") unless $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin();
|
||||||
|
|
||||||
|
skip_all("No api base defined") unless $ENV{OPENAI_API_BASE};
|
||||||
|
skip_all("No API key defined") unless $ENV{OPENAI_API_KEY};
|
||||||
|
|
||||||
|
exit() unless ($ENV{OPENAI_API_KEY} and $ENV{OPENAI_API_BASE} and $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin());
|
||||||
|
|
||||||
|
use IO::Async::Loop;
|
||||||
|
|
||||||
|
my $loop = IO::Async::Loop->new();
|
||||||
|
|
||||||
|
my $client;
|
||||||
|
ok(lives {
|
||||||
|
$client = OpenAIAsync::Client->new();
|
||||||
|
|
||||||
|
isa_ok($client, "OpenAIAsync::Client");
|
||||||
|
}, "basic client creation");
|
||||||
|
|
||||||
|
ok(lives {$loop->add($client);}, "Adding to loop");
|
||||||
|
|
||||||
|
my $output_future = $client->chat({
|
||||||
|
model => "gpt-3.5-turbo",
|
||||||
|
messages => [
|
||||||
|
{
|
||||||
|
role => "system",
|
||||||
|
content => "You are a helpful assistant that tells fanciful stories"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
role => "user",
|
||||||
|
content => "Hello!"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
max_tokens => 1024,
|
||||||
|
});
|
||||||
|
|
||||||
|
use Data::Dumper;
|
||||||
|
print Dumper($output_future->get());
|
||||||
|
|
||||||
|
done_testing();
|
|
@ -1,43 +0,0 @@
|
||||||
use strict;
|
|
||||||
use warnings;
|
|
||||||
|
|
||||||
use Test2::V0;
|
|
||||||
|
|
||||||
use OpenAIAsync::Client;
|
|
||||||
|
|
||||||
skip_all("Needs disclaimer to run") unless $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin();
|
|
||||||
|
|
||||||
skip_all("No api base defined") unless $ENV{OPENAI_API_BASE};
|
|
||||||
skip_all("No API key defined") unless $ENV{OPENAI_API_KEY};
|
|
||||||
|
|
||||||
exit() unless ($ENV{OPENAI_API_KEY} and $ENV{OPENAI_API_BASE} and $ENV{I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS} eq "Signed, ".getlogin());
|
|
||||||
|
|
||||||
ok(lives {
|
|
||||||
my $client = OpenAIAsync::Client->new();
|
|
||||||
|
|
||||||
isa_ok($client, "OpenAIAsync::Client");
|
|
||||||
}, "basic client creation");
|
|
||||||
|
|
||||||
my $exp = dies {
|
|
||||||
my $client = OpenAIAsync::Client->new(bad_option_doesnt_exist => 1);
|
|
||||||
};
|
|
||||||
|
|
||||||
ok($exp, "Unknown option kills creation");
|
|
||||||
|
|
||||||
like($exp, qr/Unrecognised parameters for OpenAIAsync::Client constructor: 'bad_option_doesnt_exist' at/, "exception text for unknonwn option");
|
|
||||||
|
|
||||||
ok lives {
|
|
||||||
my $client = OpenAIAsync::Client->new(http_other_options => {});
|
|
||||||
|
|
||||||
isa_ok($client, "OpenAIAsync::Client");
|
|
||||||
}, "set http options";
|
|
||||||
|
|
||||||
ok lives {
|
|
||||||
my $client = OpenAIAsync::Client->new(io_async_notifier_params=>{});
|
|
||||||
|
|
||||||
isa_ok($client, "OpenAIAsync::Client");
|
|
||||||
}, "Can give io async notifier options";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
done_testing();
|
|
11
xtest.sh
Executable file
11
xtest.sh
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -euxo pipefail
|
||||||
|
|
||||||
|
export OPENAI_API_KEY="0118 999 881 999 119 725 3"
|
||||||
|
export OPENAI_API_BASE="http://openai.general1-model.brainiac.ai.simcop2387.info/v1"
|
||||||
|
export I_PROMISE_NOT_TO_SUE_FOR_EXCESSIVE_COSTS="Signed, ryan"
|
||||||
|
|
||||||
|
#dzil xtest
|
||||||
|
|
||||||
|
perl -Ilib xt/02-chat-completion.t
|
Loading…
Add table
Reference in a new issue