Depersonalisation via redis cache
Good use of Lazy on the connection multiplexer but consider making it a readonly field so you can't accidentally replace it later.

Doing this in the Lazy's factory function is a bit odd in my opinion ThreadPool.SetMinThreads(50, 50);. I'm not sure what options you have for initialization in a Azure Function but you could do worse than use a static constructor on your type.

As for the rest of the function, did you know that there is a ConfigurationOptions type in StackExchange.Redis? 

new Lazy&lt;ConnectionMultiplexer&gt;(() =&gt;
    {
        string redisCacheName = System.Environment.GetEnvironmentVariable("rediscache_name", EnvironmentVariableTarget.Process).ToString();
        string redisCachePassword = System.Environment.GetEnvironmentVariable("rediscache_password", EnvironmentVariableTarget.Process).ToString();
        return ConnectionMultiplexer.Connect(new ConfigurationOptions
            {
                AbortOnConnectFail = false,
                Ssl = true,
                // not 100% sure this is exactly right but should be rightish
                EndPoints = { { redisCacheName, 0 } }
                Password = redisCachePassword
            }
        });
};


It's a bit more code but it means you don't have to build the string yourself.

Expression bodied members save some boilerplate:

public static ConnectionMultiplexer Connection =&gt; lazyConnection.Value;


C# should never snake_case anything. All methods, regardless of accessibility, should be PascalCase: depersonalise_value should be DepersonaliseValue. See the capitalization conventions on msdn.

I notice that you're not using var at all. Just wanted to double check that you knew it existed. e.g

var depersvalue = $"{account_id}:{field}:{input}";


Naming again: depersvalue should be depersonalisedValue although not clear to me whether it's already depersonalised here or whether it's about to be...

Your final else is redundant, it can be removed.

Remove the parentheses around the returned value - they just add noise.

The connection management looks fine to me - ConnectionMultiplexer is incredibly clever and it's designed to be a long-lived singleton which I think makes it fine to be in a static readonly field.

IDatabase is intentionally very lightweight and you can make as many as you like.

Edit

In response to your edit, I would suggest renaming this from "depersonalised" data to something like a PersonalDataAlias (naming is hard).