Skip to content

Conversation

@kreneskyp
Copy link
Owner

@kreneskyp kreneskyp commented Oct 16, 2023

Description

This PR adds models, API, and UX for importing and using remoteLangServe instances in IX workflows. LangServe instances are chains that run inside a FastAPI app. This is the start of integration with them.

Future PRs will enable LangServers as chains, tools, and agents.

Steps to use

  1. Open LangServers menu
  2. Click Add LangServe
  3. Enter URL, LangServer schema is automatically imported
  4. Modify name and description if needed
  5. Click Save

Example

LangServe.and.Tool.mp4

Changes

How Tested

new unittests

TODOs

  • Langserve does not yet support Pydantic 2.0

  • Finish testing on LangServerTool and LangServerChain. Responses work but there's a thread safety error raised by asyncio cleanup.

    • Possible this is related to how asyncio is integrated with celery. Hoping that replacing celery with faststream and solves this as it has better asyncio support.

@kreneskyp
Copy link
Owner Author

So I finished this a while ago and it was waiting on LangServe to support pydantic2.0. I'm unsure I can actually merge this because of non FOSS license on LangServe. Will explore whether this is possible later since LangServe hosts are limited so far.

The actual usage of LangServe library are minimal, limited mostly to initializing the client chain. This can be done with httpx directly so that might be the best path forward

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants