semantic-kernel
semantic-kernel copied to clipboard
MVP components for gRPC skills
Motivation and Context
This PR adds a few building blocks for gRPC skills support. The rest of the functionality - gRPC skills import, support for complex data contract, retries, etc. will/might be added later.
Description
This PR add the following classes/components:
- Skills.Grpc - project/package added to keep gRPC related functionality.
- ProtoDocumentParser - class responsible for parsing .ptoto files and extract them into a list of operations represented by GrpcOperation class.
- GrpcOperation - model class that describes a gRPC operation.
- GrpcOperationRunner - class responsible for running a gRPC operation.
Contribution Checklist
- [x] The code builds clean without any errors or warnings
- [x] The PR follows SK Contribution Guidelines (https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
- [x] The code follows the .NET coding conventions (https://learn.microsoft.com/dotnet/csharp/fundamentals/coding-style/coding-conventions) verified with
dotnet format - [x] All unit tests pass, and I have added new tests where possible
- [x] I didn't break anyone :smile: