Skip to content

Conversation

@apappascs
Copy link
Contributor

  • Added OpenAiAssistantManager for high-level assistant lifecycle management (create, retrieve, modify, list, delete).
  • Introduced OpenAiAssistantOptions for configuring assistant properties.
  • Implemented OpenAiAssistantApi with API-level operations.
  • Added support for tools like FunctionTool, FileSearchTool, and CodeInterpreterTool.
  • Enhanced spring-ai-spring-boot-autoconfigure with assistant-related properties and auto-configuration.
  • Included integration tests (OpenAiAssistantManagerIT and OpenAiAssistantApiIT) for assistant lifecycle operations.
  • Updated documentation to cover assistant API features and usage examples.

Partially resolves #506


  • Run a build and make sure all tests pass prior to submission
./mvnw spring-javaformat:apply
./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
./mvnw verify -Pintegration-tests -pl spring-ai-core 
./mvnw verify -Pintegration-tests -pl models/spring-ai-openai
./mvnw verify -Pintegration-tests -pl spring-ai-spring-boot-autoconfigure 
./mvnw javadoc:javadoc -Pjavadoc

- Added `OpenAiAssistantManager` for high-level assistant lifecycle management (create, retrieve, modify, list, delete).
- Introduced `OpenAiAssistantOptions` for configuring assistant properties.
- Implemented `OpenAiAssistantApi` with API-level operations.
- Added support for tools like `FunctionTool`, `FileSearchTool`, and `CodeInterpreterTool`.
- Enhanced `spring-ai-spring-boot-autoconfigure` with assistant-related properties and auto-configuration.
- Included integration tests (`OpenAiAssistantManagerIT` and `OpenAiAssistantApiIT`) for assistant lifecycle operations.
- Updated documentation to cover assistant API features and usage examples.

Partially resolves spring-projects#506
@apappascs
Copy link
Contributor Author

@markpollack @tzolov any updates on this one?

@andresssantos
Copy link
Contributor

Any ETA on this feature?

@coloco21
Copy link

coloco21 commented Feb 5, 2025

@apappascs So this is just for Assistant management and not for retrieving responses from an assistant? I already have a working homemade solution without Spring AI but I need to implement streaming and I'm wondering if I should wait for this PR.

@apappascs
Copy link
Contributor Author

@apappascs So this is just for Assistant management and not for retrieving responses from an assistant? I already have a working homemade solution without Spring AI but I need to implement streaming and I'm wondering if I should wait for this PR.

Yes this is only for Assistant management. The rest like threads, messages, runs etc can be implemented respectively. The thing is that all Api endpoints related to Assistants are still in Beta.

@apappascs
Copy link
Contributor Author

Closing this PR based on the feedback given from @markpollack

@apappascs apappascs closed this Apr 18, 2025
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.

Add support for Assistant OpenAi API

3 participants