*Hi Richard and Jeff,*

I hope you're both doing well.

I would like to provide an update on the gRPC-based Python client
integration. I have reached the stage where the client connects and RPC
calls are being made, but I am consistently receiving a server-side error
when attempting sentence detection.

To assist with debugging, I have pushed the *entire raw state* of my
environment  to my repository:
*https://github.com/JOBIN-SABU/opennlp-sandbox-experiments
<https://www.google.com/url?sa=E&source=gmail&q=https://github.com/JOBIN-SABU/opennlp-sandbox-experiments>*

*Technical Context:*

   -

   1. *Working Directory:*
      tmp-opennlp-sandbox1/opennlp-sandbox/opennlp-grpc/target/
      2. *Server Command:* java -cp
      "opennlp-grpc-server-2.5.8-SNAPSHOT.jar:models/:" -Dopennlp.model.dir=.
      org.apache.opennlp.grpc.OpenNLPService
      3. *Model Location:* ./models/opennlp/tools/sentdetect/en-sent.bin
      4. *The Error:* grpc._channel._InactiveRpcError: status =
      StatusCode.INTERNAL, details = "Could not find the given model."



I suspect the issue lies in how the gRPC wrapper handles resource
loading—specifically whether it expects models on the *ClassPath* or
supports *Relative/Absolute File System paths* via the config file. Since
I’ve experimented with both flat and nested directory hierarchies without
success, I would appreciate any insight into the "expected" pathing for the
Sandbox server.

*Regarding GSoC 2026:* As I have been contributing to this for nearly a
year, my goal remains to establish a robust bridge between OpenNLP and the
Python community. I would love to formally propose this as a project for
the *GSoC 2026 cycle* to move these features from the sandbox into a
production-ready state.

Beyond fixing the current integration, my proposal includes:

   -

   *Expanding Services:* Implementing NER (Named Entity Recognition) and
   Chunking as gRPC services.
   -

   *Pythonic SDK:* Developing a client library for distribution via
   PyPI/pip.
   -

   *Documentation:* Creating comprehensive benchmarks and "Getting Started"
   guides.

Given my deep involvement in the current implementation, *would either of
you be interested in mentoring me for this project during the upcoming GSoC
cycle?* I am eager to see this through to completion for the Apache OpenNLP
community.

Best regards,

*Jobin Sabu*


On Wed, 25 Feb 2026 at 10:45, Jobin Sabu <[email protected]> wrote:

>    Hi Richard and Jeff,
>
> ​I hope you're both doing well.
>
> ​I would like to provide a brief report on the gRPC based Python client
> integration. I have got to a stage where the client connects and RPC calls
> are being made but I am always receiving a server-side error when trying to
> detect the sentence.
>
> ​I have deployed the latest version of my work, such as the models/ folder
> and the config.properties, to my repository:
> https://github.com/JOBIN-SABU/opennlp-sandbox-experiments
> <https://www.google.com/url?sa=E&source=gmail&q=https://github.com/JOBIN-SABU/opennlp-sandbox-experiments>
> .
>
> ​*Technical Details:*
>
> ​*Server Command:*
>
> java -jar opennlp-grpc-server-2.5.8-SNAPSHOT.jar -c config.properties -p
> 7071
>
> ​*config.properties:*
>
> sentenceModel=en-sent.bin
>
> ​*The Error:*
>
> grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated
> with: status = StatusCode.INTERNAL, details = "Could not find the given
> model.">
>
> ​As OpenNLP is a library, I believe the problem is in the nature of
> loading resources in gRPC wrapper, i.e., whether it anticipates the model
> existing on the ClassPath or is capable of interpreting File System paths
> based on the configuration file. Am I going through an absolute path, or
> does the server have a particular directory hierarchy it wants external
> models to go through?
>
> ​*Regarding GSoC 2026:*
>
> ​Since I have been working on this for almost a year now, my goal remains
> to establish a bridge between OpenNLP and the Python community. While I am
> committed to this regardless of GSoC, I would love to formally propose this
> as a project for the 2026 cycle to move it from the sandbox into a
> production-ready feature.
>
> ​Beyond repairing the existing integration, I plan to:
>
>    - ​Implement *NER (Named Entity Recognition)* and *Chunking* as gRPC
>    services.
>    - ​Write a pythonic client SDK that will be distributed through
>    *PyPI/pip*.
>    - ​Develop detailed documentation and performance benchmarks.
>
> ​Since I am already deep into the implementation, would either of you
> consider mentoring me for this project during the upcoming cycle of Gsoc?
> I’m eager to see this through to completion for the community.
>
> ​Best regards,
>
> ​*Jobin Sabu*
>
> *https://www.linkedin.com/in/jobin-sabu-0b18bb2b8/
> <https://www.linkedin.com/in/jobin-sabu-0b18bb2b8/>*
>
> *https://github.com/JOBIN-SABU <https://github.com/JOBIN-SABU>*
>

Reply via email to