git: ce37f9f1bd34 - main - misc/py-instructor: add port: Structured outputs for llms

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Fri, 12 Jan 2024 07:29:52 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ce37f9f1bd3475002d3e38f46454be198ce4ffa1

commit ce37f9f1bd3475002d3e38f46454be198ce4ffa1
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2024-01-12 07:28:19 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2024-01-12 07:29:41 +0000

    misc/py-instructor: add port: Structured outputs for llms
    
    Structured extraction in Python, powered by OpenAI's function calling
    API, designed for simplicity, transparency, and control.
    
    Dive into the world of Python-based structured extraction, empowered
    by OpenAI's cutting-edge function calling API. Instructor stands out
    for its simplicity, transparency, and user-centric design. Whether
    you're a seasoned developer or just starting out, you'll find
    Instructor's approach intuitive and its results insightful.
    
    WWW: https://github.com/jxnl/instructor
---
 misc/Makefile                |  1 +
 misc/py-instructor/Makefile  | 27 +++++++++++++++++++++++++++
 misc/py-instructor/distinfo  |  3 +++
 misc/py-instructor/pkg-descr |  8 ++++++++
 4 files changed, 39 insertions(+)

diff --git a/misc/Makefile b/misc/Makefile
index 25cfe2f8a443..219cd07ac295 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -428,6 +428,7 @@
     SUBDIR += py-histoprint
     SUBDIR += py-huepy
     SUBDIR += py-icoextract
+    SUBDIR += py-instructor
     SUBDIR += py-ipyfastscape
     SUBDIR += py-kartograph
     SUBDIR += py-laspy
diff --git a/misc/py-instructor/Makefile b/misc/py-instructor/Makefile
new file mode 100644
index 000000000000..4ff68f5f62ac
--- /dev/null
+++ b/misc/py-instructor/Makefile
@@ -0,0 +1,27 @@
+PORTNAME=	instructor
+DISTVERSION=	0.4.6
+CATEGORIES=	misc python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	tagattie@FreeBSD.org
+COMMENT=	Structured outputs for llms
+WWW=		https://github.com/jxnl/instructor
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}poetry-core>0:devel/py-poetry-core@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}openai>=1.1.0<2.0.0:misc/py-openai@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pydantic2>=2.0.2<3.0.0:devel/py-pydantic2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}docstring-parser>=0.15<0.16:textproc/py-docstring-parser@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}typer>=0.9.0<0.10.0:devel/py-typer@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}rich>=13.7.0<14.0.0:textproc/py-rich@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}aiohttp>=3.9.1<4.0.0:www/py-aiohttp@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist pep517
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/misc/py-instructor/distinfo b/misc/py-instructor/distinfo
new file mode 100644
index 000000000000..41ffb8441f1c
--- /dev/null
+++ b/misc/py-instructor/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1704884273
+SHA256 (instructor-0.4.6.tar.gz) = 5b044ca71b1b750409b654013ed59299b1acd74d5bc932ecba725f50406afa9f
+SIZE (instructor-0.4.6.tar.gz) = 23751
diff --git a/misc/py-instructor/pkg-descr b/misc/py-instructor/pkg-descr
new file mode 100644
index 000000000000..abf54f630645
--- /dev/null
+++ b/misc/py-instructor/pkg-descr
@@ -0,0 +1,8 @@
+Structured extraction in Python, powered by OpenAI's function calling
+API, designed for simplicity, transparency, and control.
+
+Dive into the world of Python-based structured extraction, empowered
+by OpenAI's cutting-edge function calling API. Instructor stands out
+for its simplicity, transparency, and user-centric design. Whether
+you're a seasoned developer or just starting out, you'll find
+Instructor's approach intuitive and its results insightful.