git: 01ceeb69a008 - main - misc/py-llm: new port - interact with remote and local models incl OpenAI, and Anthropic

From: Dave Cottlehuber <dch_at_FreeBSD.org>
Date: Wed, 22 May 2024 13:57:26 UTC
The branch main has been updated by dch:

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

commit 01ceeb69a008e98d66aec70fde9afe4d33c8b5c2
Author:     Dave Cottlehuber <dch@FreeBSD.org>
AuthorDate: 2024-05-22 13:57:17 +0000
Commit:     Dave Cottlehuber <dch@FreeBSD.org>
CommitDate: 2024-05-22 13:57:17 +0000

    misc/py-llm: new port - interact with remote and local models incl OpenAI, and Anthropic
---
 misc/Makefile         |  1 +
 misc/py-llm/Makefile  | 40 ++++++++++++++++++++++++++++++++++++++++
 misc/py-llm/distinfo  |  3 +++
 misc/py-llm/pkg-descr |  2 ++
 4 files changed, 46 insertions(+)

diff --git a/misc/Makefile b/misc/Makefile
index 1134a465c505..e4a82bb1082f 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -443,6 +443,7 @@
     SUBDIR += py-lightgbm
     SUBDIR += py-lightning-utilities
     SUBDIR += py-litellm
+    SUBDIR += py-llm
     SUBDIR += py-log_symbols
     SUBDIR += py-mffpy
     SUBDIR += py-mmcv
diff --git a/misc/py-llm/Makefile b/misc/py-llm/Makefile
new file mode 100644
index 000000000000..f02a613f7ab5
--- /dev/null
+++ b/misc/py-llm/Makefile
@@ -0,0 +1,40 @@
+PORTNAME=	llm
+DISTVERSION=	0.14
+CATEGORIES=	misc python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	dch@FreeBSD.org
+COMMENT=	Interact with Large Language Models by API, or locally
+WWW=		https://llm.datasette.io/ \
+		https://github.com/simonw/llm
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}click-default-group>=1.2.3:devel/py-click-default-group@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}openai>=1.0.0:misc/py-openai@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pluggy>=1.0:devel/py-pluggy@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pydantic2>=2.0:devel/py-pydantic2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}python-ulid>=1<3:textproc/py-python-ulid@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}sqlite-migrate>0:databases/py-sqlite-migrate@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}types-PyYAML>=0:devel/py-types-PyYAML@${PY_FLAVOR}
+
+USES=		python shebangfix
+USE_PYTHON=	autoplist concurrent pep517
+
+NO_ARCH=	yes
+
+PORTDOCS=	README.md
+
+OPTIONS_DEFINE=	DOCS
+
+post-install-DOCS-on:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} \
+		${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/misc/py-llm/distinfo b/misc/py-llm/distinfo
new file mode 100644
index 000000000000..6e73e6140652
--- /dev/null
+++ b/misc/py-llm/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1715904497
+SHA256 (llm-0.14.tar.gz) = c4150eb47246342846cf57497304ed9afb918a94c5a39049e7422f1961371c09
+SIZE (llm-0.14.tar.gz) = 36664
diff --git a/misc/py-llm/pkg-descr b/misc/py-llm/pkg-descr
new file mode 100644
index 000000000000..c81829e2b45e
--- /dev/null
+++ b/misc/py-llm/pkg-descr
@@ -0,0 +1,2 @@
+A CLI utility and Python library for interacting with Large Language Models,
+including OpenAI, PaLM and local models installed on your own machine.